2012-01-09 3 views
7

데이터 폴더를 보면 CF 용으로 다음 파일을 발견했습니다. 몇 가지 질문 - 각각의 파일은 무엇입니까? 1 ... 6은 무엇입니까? 1에서 6 중 어느 것이 CF의 최종 (전체) 데이터를 포함합니까?카산드라 데이터 파일 이름 규칙

<cf name>-g-1-Compacted 
<cf name>-g-1-Data.db 
<cf name>-g-1-Filter.db 
<cf name>-g-1-Index.db 
<cf name>-g-1-Statistics.db 

... 

<cf name>-g-6-Compacted 
<cf name>-g-6-Data.db 
<cf name>-g-6-Filter.db 
<cf name>-g-6-Index.db 
<cf name>-g-6-Statistics.db 

답변

9

이러한 파일은 SSTable과 관련된 SSTable 및 메타 데이터입니다.

  • Data.db 일 : sstable
  • Index.db의 기본 데이터 : 여기 (IO/sstable/Component.java를 산드 소스로부터 상승) 각 파일에 대한 간단한 설명은 행 인덱스 sstable
  • Bitidx.db의 콘텐츠 메타 데이터에 대한 통계 : 다음 sstable
  • Statistics.db 내의 행 키 일련 블룸 필터 : 데이터 파일
  • Filter.db에서 자신의 위치에 포인터 키 비트 맵 2 차 인덱스 : 이들 중 많은 수가 sstable 당 나타날 수 있습니다.
  • 압축 된 : sstable가 준비되면 생성 길이가 0 인 파일이 * -Compacted와

SSTables을 삭제하려면 삭제 표시됩니다. 이 파일들은 JVM이 GC를 수행하거나 시스템이 디스크 공간이 부족하다는 것을 Cassandra가 감지 할 때 비동기식으로 정리됩니다.

숫자는 sstable의 생성을 나타냅니다 (큰 것들은 더 새로운 것입니다). 어느 하나가 모두 데이터를 가지고 있다면, 정상적인 조건에서 데이터는 여러 개의 SSTable과 메모리에 분산 될 수 있습니다. nodetool을 사용하여 열 패밀리를 플러시 한 다음 주요 압축을 실행하여 해당 SSTable에 대한 모든 데이터가있는 파일 하나를 생성 할 수 있습니다 (해당 열 패밀리에 다른 것을 쓰지 않는다고 가정).

+0

'Data.db' 파일에는 열 패밀리의 모든 데이터가 포함되어 있습니다. 다른 모든 것들은 그것으로부터 생성 될 수 있습니다. –