ScyllaDB 2026.2: Alternator Streams GA·Vector Search·Trie 인덱스·Raft 데이터 일관성
네 가지를 한 릴리스에 묶은 이유
ScyllaDB 2026.2는 2026년 6월 29일 공개된 Short-Term Support(STS) 마이너 피처 릴리스다. STS는 장기 지원 주기를 따르지 않지만, 이번 릴리스는 GA 전환, 실험 기능 승격, 인덱스 포맷 교체, 일관성 모델 확장이라는 네 가지 독립적인 큰 변화를 담았다.
네 변화는 각기 다른 계층에 속한다.
- Alternator Streams GA: DynamoDB 호환 API 레이어의 CDC 기능
- Vector Search (Alternator 확장): 동일 API 레이어에서의 유사도 검색
- Trie 인덱스 기본값 적용: SSTable 저장 포맷의 읽기 경로 최적화
- Raft 데이터 일관성: 토폴로지 관리를 넘어 데이터 레코드까지 Raft 적용
운영자 입장에서 이 네 가지는 서로 다른 검토 기준을 요구한다. 순서대로 살펴본다.
아키텍처 전체 위치
① Alternator Streams GA: DynamoDB 호환 CDC
ScyllaDB의 DynamoDB 호환 API는 Alternator라고 부른다. Alternator Streams는 DynamoDB Streams와 동일한 인터페이스로 테이블 변경 이벤트를 스트리밍하는 CDC(Change Data Capture) 기능이다.
2026.2에서 GA(Generally Available)로 승격됐다. GA 전에는 프로덕션 도입에 지원이 제한적이었다.
어떻게 동작하는가
StreamSpecification을 활성화한 Alternator 테이블에서 아이템 수준의 변경(INSERT, UPDATE, DELETE)이 발생하면 스트림 레코드가 생성된다. 레코드는 변경 순서가 보장된다. DynamoDB Streams SDK를 그대로 사용하는 애플리케이션은 연결 엔드포인트만 Alternator로 바꾸면 된다.
사용 패턴:
- 다운스트림 검색 인덱스 동기화 (Elasticsearch, OpenSearch)
- 이벤트 드리븐 파이프라인 트리거 (Lambda 호환 consumer 포함)
- 크로스 리전 복제 또는 다른 스토리지로의 데이터 팬아웃
운영자 확인 사항: Streams를 활성화하면 테이블당 메모리와 디스크 오버헤드가 발생한다. 보존 기간(기본 24시간) 내 레코드가 쌓이므로 retention 정책을 명시적으로 설정한다.
② Vector Search: Alternator 위에 올린 ANN 검색
DynamoDB API에 VECTOR 타입 컬럼과 ANN OF 쿼리 확장이 추가됐다. 별도 벡터 데이터베이스 없이 Alternator 테이블에서 직접 유사도 검색을 실행할 수 있다.
인덱스 구조
VECTOR 타입 컬럼에 ANN 인덱스를 생성하면 Approximate Nearest Neighbor 검색이 가능하다. 인덱스는 쿼리 시 재현율(recall) 95% 이상을 목표로 튜닝됐다고 ScyllaDB가 밝혔다. 10억 건 규모에서도 이 목표를 유지하는 게 설계 기준이다.
쿼리 예시:
SELECT item_id, title
FROM products
WHERE category = 'electronics'
ORDER BY embedding ANN OF [0.12, 0.87, ...]
LIMIT 10;WHERE 절 필터링을 ANN 검색과 결합할 수 있다. 사전 필터링(pre-filter)과 사후 필터링(post-filter) 방식 중 어느 쪽이 적용되는지는 ScyllaDB 공식 문서에서 확인한다.
현재 기준으로 이 기능은 실험적 단계다. 프로덕션 도입 전 충분한 부하 테스트가 필요하다.
③ Trie 인덱스: SSTable 읽기 경로의 포맷 교체
ScyllaDB의 SSTable은 기존에 Summary 파일과 Index 파일을 별도로 유지했다. Summary는 키 샘플을 빠르게 탐색하고, Index는 전체 키를 정렬된 오프셋으로 저장한다. 읽기 시 두 파일을 순차적으로 탐색한다.
Trie(Prefix Tree) 구조로의 전환
Trie 기반 인덱스는 두 파일을 단일 프리픽스 트리로 대체한다. 공통 프리픽스를 공유하는 키들이 트리 상단에서 분기되므로:
- 메모리 오버헤드 감소: 공통 프리픽스 저장이 중복 없음
- 디스크 I/O 감소: 탐색 경로가 트리 높이에 비례 (정렬된 배열 선형 탐색 대비)
- 캐시 효율 향상: 자주 접근하는 프리픽스 노드가 캐시에 머무는 시간이 길어짐
ScyllaDB 측 벤치마크에서 최대 3배 처리량 향상이 측정됐다고 발표했다.
2026.2에서 Trie 인덱스가 기본 SSTable 인덱스 포맷이 됐다. 새로 작성되는 SSTable은 자동으로 Trie 포맷을 사용한다. 기존 SSTable은 다음 컴팩션 시 Trie 포맷으로 재작성된다.
운영자 주의사항: Trie 포맷 SSTable을 이전 버전 ScyllaDB로 읽으려 하면 실패할 수 있다. 다운그레이드 계획이 있다면 2026.2 업그레이드 전에 롤백 전략을 먼저 확정한다.
④ Raft 데이터 일관성: Eventually → Strongly Consistent Keyspace
ScyllaDB는 4.x에서 Raft를 토폴로지 관리(노드 추가/제거, 스키마 DDL)에 먼저 적용했다. 데이터 레코드 자체는 여전히 eventual consistency 또는 LWT(Lightweight Transactions)로 처리했다.
2026.2에서 Raft를 데이터 레코드 일관성에도 적용하는 실험적 기능이 추가됐다. STRONGLY_CONSISTENT 키스페이스를 선언하면 해당 키스페이스의 모든 쓰기가 Raft 쿼럼을 거친다.
LWT 대비 장점
| 항목 | LWT (Paxos) | Strongly Consistent (Raft) |
|---|---|---|
| 프로토콜 | Paxos (multi-round) | Raft (single-leader, pipelined) |
| 지연 | 높음 (4 round-trips) | 낮음 (리더에서 직접 처리) |
| 읽기 일관성 | 조건부 | 선형화 가능 (linearizable) |
| 복잡도 | 쿼리별 설정 | 키스페이스 수준 선언 |
ScyllaDB는 "eventual consistency에 가까운 성능"이라고 표현했다. 이 주장은 클러스터 크기, 레이턴시 분포, 쓰기 비율에 따라 크게 달라지므로 실측이 필요하다.
현재 이 기능은 실험적 단계이며 프로덕션 워크로드에 바로 적용하기 전에 테스트 환경에서 충분히 검증해야 한다.
업그레이드 전 확인 목록
ScyllaDB 2025.x 또는 2026.1 LTS에서 2026.2로 올라갈 때 확인할 사항을 정리한다.
Trie 인덱스 포맷 관련:
- [ ] 다운그레이드 계획 확인 — Trie SSTable은 이전 버전에서 읽을 수 없을 수 있음
- [ ] 컴팩션 스케줄 검토 — 기존 SSTable 재작성 시 디스크 I/O 증가 예상
- [ ] nodetool status로 컴팩션 진행 모니터링
Alternator Streams 도입 시:
- [ ] 테이블당 스트림 활성화 오버헤드 측정
- [ ] Consumer 그룹 lag 모니터링 추가
- [ ] 스트림 레코드 보존 기간 명시 설정
Vector Search 평가 시:
- [ ] 실험적 기능 플래그 확인 후 테스트 환경 한정 적용
- [ ] recall 목표치 실측 (workload 특성에 따라 달라짐)
- [ ] 필터링 방식(pre/post-filter) 동작 확인
Strongly Consistent Keyspace 평가 시:
- [ ] 기존 LWT 사용 패턴과 성능 비교 벤치마크
- [ ] Raft 리더 다운 시 가용성 영향 테스트
- [ ] 실험적 기능이므로 프로덕션 전 충분한 검증
어떤 팀에게 의미 있는가
DynamoDB 워크로드를 ScyllaDB로 이관한 팀은 Alternator Streams GA가 직접적 이득이다. CDC 파이프라인 안정성이 GA 수준의 지원을 받게 된다.
실시간 벡터 검색이 필요한 팀은 Vector Search를 관찰할 가치가 있다. 하지만 현재 실험 단계이므로 프로덕션 도입보다는 아키텍처 검토 수준이 적절하다.
읽기 집약적 CQL 워크로드를 운영하는 팀은 Trie 인덱스의 처리량 향상이 가장 체감이 클 수 있다. 기존 코드 변경 없이 업그레이드만으로 적용된다는 점이 장점이다.
강한 일관성이 필요한 금융·주문 시스템은 Strongly Consistent Keyspace를 장기적으로 주시할 필요가 있다. LWT의 지연 문제를 Raft로 해결하는 방향이 성숙되면 의미 있는 전환 경로가 될 수 있다.
References
- https://www.scylladb.com/2026/06/29/scylladb-2026-2/
- https://forum.scylladb.com/t/release-scylladb-2026-2/5426
- https://www.scylladb.com/2026/06/30/trie-index-3x-more-throughput/
- https://docs.scylladb.com/manual/stable/architecture/tablets.html
- https://docs.scylladb.com/manual/stable/architecture/raft.html
- https://docs.scylladb.com/manual/stable/using-scylla/alternator/
- https://cloud.docs.scylladb.com/stable/vector-search/