DBMS/Cassandra

[Cassandra] 언제 Minor Compaction이 일어날까?

반응형

Compaction에 대한 내용은 다루지 않음.

Cassandra Compaction 종류

  • Minor Compaction: 카산드라에서 자동으로 트리거링 해주는 컴팩션.
  • Major Compaction: 수동으로 노드 내의 모든 SSTable을 대상으로 컴팩션을 실행
  • User Defined Compaction: 특정 SSTable 들을 대상으로 수동으로 컴팩션을 실행.
  • UpgradeSSTables: SSTable들을 최신 버전으로 업데이트함.
  • CleanUp: 해당 노드가 소유한 범위에 더이상 포함되지 않는 대상들을 제거.
    • 노드을 증설하면, 리밸런싱이 일어나는데, 증설 이후, 기존 노드들에서 cleanup을 때려줘야 불필요한 데이터들이 삭제됨

등이 있다.

Minor Compaction 트리거링 시점

이중 카산드라에서 자동으로 트리거링 해주는 Minor Compaction은 언제 일어날까?

  1. 노드에 SStable이 추가될때
  2. autocompaction이 꺼져있다가, 켜지는 시점 (nodetool enableautocompaction)
  3. 컴팩션으로 새로운 SSTable이 생성되었을때

참고로, 카산드라에서 매 5분마다 minor compaction을 실행할지 체크한다.

반응형