질문
카산드라에서 특정 테이블에 일부 데이터는 TTL 2일로 설정되어 있고, 일부 데이터는 60일 TTL로 되어 있다면 가장 적합한 컴팩션 전략은 무엇인가요?
1. LeveledCompactionStrategy (LCS)
2. SizeTieredCompactionStrategy (STCS)
3. TimeWindowCompactionStrategy (TWCS)
답변
가장 적합한 전략은 TimeWindowCompactionStrategy입니다. 만에하나 동일 테이블에 여러 종류의 ttl 시간이 설정되어 있다고 하더라도 TWCS가 적합합니다. unchecked tombstone compaction을 설정함으로서 2일 이상 지난 TTL 데이터는 삭제되도록 하는 것이 좋습니다.
ALTER TABLE my_table WITH compaction =
{'class':'TimeWindowCompactionStrategy',
'unchecked_tombstone_compaction':'true', ...}
3.11.1 이상 버전을 사용할 경우 unsafe_aggressive_sstable_expiration를 true로 설정하는 것도 좋습니다.
답변자
- Alexander DEJANOVSKI
- DataStax principal Architect
- https://www.linkedin.com/in/alexander-dejanovski-2a9912a/?originalSubdomain=fr
출처 : https://user.cassandra.apache.narkive.com/j3pSuCSP/best-compaction-strategy
반응형
'빅데이터 > cassandra' 카테고리의 다른 글
카산드라 TimeWindowCompactionStrategy 설명 (0) | 2022.02.07 |
---|---|
카산드라와 TTL, 툼스톤 그리고 관련 동작(컴팩션) (0) | 2022.02.04 |
아파치 카산드라 설정 파일 및 상용 환경 셋팅 (0) | 2022.02.04 |
아파치 카산드라 다이나모, 일관된 해싱, 복제 개념 살펴보기 (0) | 2022.02.03 |
아파치 카산드라 살펴보기, 설명, 기본 개념 (0) | 2022.02.03 |
카산드라 TTL에 따른 데이터 삭제 정리 (0) | 2022.01.20 |