DBMS/Cassandra

CassandraDB Snapshot

seungh0 2024. 2. 19. 03:18
반응형

Cassandra Snasphot


Cassandra DB에서 기본 설정 상 truncate or Drop 전에 Snapshot을 만든다. (cassandra.yml의 auto_snapshot 설정으로 default: true이다)
그래서, Truncate 및 Drop을 했는데, 실제 디스크 사용량이 줄어들지 않아서, 해당 데이터를 디스크에서 완전히 삭제하려면, Snapshot도 제거해야 한다.

  • cf) 위의 케이스 이외에도 설정에 따라서 compaction, increment_backup 등에 의해서도 snapshot이 생성될 수 있음.

 

스냅샷 제거 방법


./nodetool clearsnapshot --all

--all: 모든 키스페이스에 속한 모든 스냅샷 제거

./nodetool clearsnapshot --all {{KEY_SPACE}};

특정키스페이스에 속한 모든 스냅샷 제거

./nodetool clearsnapshot -t {{SNAP_SHOT_NAME}} {{KEY_SPACE}};

특정 키스페이스에 속한 특정 스냅샷 제거

 

ClearSnapshot Throttling 설정 (부하 조절용)


SStable 수에 따라서, 순간적으로 Disk I/O가 올라갈 수 있음, 필요시 throttling을 적절한 수치로 설정해서 부하를 제한이 필요할 수 있음.

./nodetool setsnapshotthrottle 10000

ClearSnapshot throttle 확인 방법

./nodetool getsnapshotthrottle
# Current snapshot throttle: 9223372036854775807 links/s (default)

Snapshot 데이터 확인 방법

./nodetool listsnapshots

listsnapshots 명령을 이용하거나 tablestats을 이용해서 현재 스냅샷 현황을 알 수 있음. (JMX를 이용해서 SLI 지표를 시각화해두면, 운영시 용이함)

./nodetool tablestats {{KEYSPACE}}.{{TABLE}}

Total number of tables: 173
----------------
Keyspace : {{KEYSPACE}}
        Read Count: 538963
        Read Latency: 0.8952310770869243 ms
        Write Count: 1138
        Write Latency: 0.03317398945518453 ms
        Pending Flushes: 0
                Table: {{TABLE}}
                SSTable count: 0
                Old SSTable count: 0
                Space used (live): 0
                Space used (total): 0
                Space used by snapshots (total): 4679933059
                Off heap memory used (total): 0
                SSTable Compression Ratio: -1.0
                Number of partitions (estimate): 0
                Memtable cell count: 0
                Memtable data size: 0
                Memtable off heap memory used: 0
                Memtable switch count: 0
                Local read count: 0
                Local read latency: NaN ms
                Local write count: 0
                Local write latency: NaN ms
                Pending flushes: 0
                Percent repaired: 100.0
                Bytes repaired: 0.000KiB
                Bytes unrepaired: 0.000KiB
                Bytes pending repair: 0.000KiB
                Bloom filter false positives: 0
                Bloom filter false ratio: 0.00000
                Bloom filter space used: 0
                Bloom filter off heap memory used: 0
                Index summary off heap memory used: 0
                Compression metadata off heap memory used: 0
                Compacted partition minimum bytes: 0
                Compacted partition maximum bytes: 0
                Compacted partition mean bytes: 0
                Average live cells per slice (last five minutes): NaN
                Maximum live cells per slice (last five minutes): 0
                Average tombstones per slice (last five minutes): NaN
                Maximum tombstones per slice (last five minutes): 0
                Dropped Mutations: 0
                Droppable tombstone ratio: 0.00000
반응형