2012-08-31 3 views
2

Cassandra의 행 키와 동등한 128 비트 정수를 갖고 싶다면이 데이터를 처리하는 데 가장 효율적인 데이터 유형은 무엇입니까? 전체 8 비트 범위를 사용하는 ASCII?Cassandra의 행 키 128 비트 int 변환

행 조각과 범위를 선택할 수 있어야합니다.

답변

1

아마도 int의 raw byte [] 표현을 사용하고 변환을 피하십시오. 르 두와 르 담론의 위의 의견.

2

랜덤 파티션 도구 (키가 클러스터에서 분산되는 방식을 결정하는 부분)를 사용하면 행 키가 비교되지 않습니다. 행 키를 비교하려면 Order Preserving partitioner를 사용하십시오.하지만 이는 확실히 불균형 클러스터로 이어지고 충돌합니다.

다른 열 이름이 같은 행에 있지만 열 이름이 비교됩니다.

내 조언은 열을 숫자 간격으로 버킷에 넣고 LongType 열 이름으로 열을 삽입하는 것입니다.

1

원시 바이트 [] 비교는 숫자 순서로 열을 정렬하지 않습니다. 원하는 경우 varint (CQL)/IntegerType (Thrift)

+0

이 유형의 크기 제한은 무엇입니까? – IamIC

+0

또한 키에 대해서만 이야기하고 있습니다. – IamIC

+0

저는 혼란 스럽습니다 : http://www.datastax.com/docs/1.1/ddl/column_family는 varint가 비교 자나 유효성 검사기에서 사용될 수 있다고 말합니다. 왜이 유형으로 열을 정렬하지 않습니까? – IamIC

관련 문제