그래서 행 키에 대해 복합 ID를 사용하는 열 패밀리를 정의했습니다. 복합 키는 CompositeType(LongType,LongType)
입니다. 그래서이 유형의 항목을 저장했는데 제대로 작동하고 전체 키를 알고있을 때 SELECT
이 예상대로 작동합니다. 하지만 첫 번째 요소로 0을, 두 번째 요소로 모든 키를 원한다고 가정 해 보겠습니다. 지금까지이 쿼리를 수행 할 수있는 유일한 방법은 다음과 같습니다.cassandra에서 compositetype 키를 선택하십시오.
모든 키가 0 인 경우 * : 다음 순서 보존이있는 한 작동하는 key >= 0:0 AND key < 1:0
에 대한 CQL 쿼리를 수행합니다. 파 테이너.
내 질문은 :
1) 내가 옆 중고품에서 nodejs)
2) 만 옵션 A CQL 드라이버를 (사용하고 때문이 이상한 구문은 이러한 유형의 어떤 비 효율성이 질문? 본질적으로 나는 CQL에서 지원되지 않기 때문에 수퍼 컬럼 대신 복합 키를 사용합니다. 이런 문제를 사용하는 데 제한이없는 한이 논리를 코드에서 다루는 데 아무런 문제가 없습니다.
행 키를 사용하지 않는 이유가 있지만 컴포지션으로 행 키 대신 열을 사용할 수 있다는 것이 맞습니까? 데이터가 균등하게 분산되어 있어도 불균형으로 인한 부하 문제가 발생할 수 있음을 알고 있습니다. 하지만 내 모든 키는 적어도 8 바이트의 sha1로 시작하므로 문제가 될 수 있습니다. – user1084563
이제는 추론을 기억합니다. 그래서 LongType으로 키를 처리 할 수 있고 현재 열은 CompositeType (LongType, UTF8Type)이 될 수 있습니다. 그러나 모두 같지 않은 경우 값 유형을 선언 할 수있는 능력을 잃지 않습니까? 한 열이 긴 값이고 다른 열이 utf8 값인 것처럼 이제는 더 이상 정적 열 이름이 없으므로 모든 열이 BytesType이라고 말해야합니다. 그런 다음 카사 드라의 기능을 잃어 버렸고 저의 타입 변환을 올바르게 처리 했습니까? 내가 여기서 뭔가를 놓치고 있니? – user1084563
나의 이해에 따르면, 당신이 말한 것처럼 Byte로 저장하는 두 가지 옵션과, 값을 저장하기 위해 Dynamic Composites를 사용하는 두 가지 옵션이 있습니다. DC를 사용하면 데이터 유형이 다른 단일 구성 요소를 사용할 수 있습니다. – Mohit