2017-09-13 4 views
0

우리가 2 CF (CF1, CF2)를 가지고 있다고 가정합시다.HBase에서 ColumnFamily TTL은 실제로 무엇을 의미합니까?

CF2의 하루 TTL이 있고 CF2에 2 개의 ColumnQualifiers가 있다고 가정 해 보겠습니다.

주요 압축 중에 하루보다 오래된 CF2의 셀이 자동으로 삭제됩니다 (최소 버전 == 0 인 경우)? 문서에서 그렇지 않은 그들이 무엇을 의미하는지 확실히 행 ... 워드 프로세서에서 내 이해 당으로

답변

1

를 참조 계속하기 때문에

내가 혼란 스러워요, 행은 열 가족 특히 rowkey의 버전을 의미합니다.

버전 - 열 패밀리에서 유지 관리되는 행 키의 버전 번호가 없습니다.

TTL - 최소 rowkey에 대한 버전없이 시간의 어느 시점에서 유지 될 수 - 기간은

MIN_VERSIONS가 rowkey의 버전을 유지한다.

예를 들어 위의 세 가지를 설명하고 싶습니다. 즉, CF2는 버전 = 100, TTL = 1 일, MIN_VERSIONS = 3으로 구성되었습니다.

따라서 CF2에서 특정 rowKey에 대해 최대 100 버전이 유지되며 1 일보다 오래된 버전은 주요 압축 버전이 3보다 크지 않은 경우입니다. 이렇게하면 항상 CF2에 대해 레코드의 3 버전이 항상 존재하게됩니다.