문제
다음 데이터 세트를 가정합니다.
id age city phone
== === ==== =====
alfred 30 london 3281283
jeff 43 sydney 2342734
joe 29 tokyo 1283881
kelly 54 new york 2394929
molly 20 london 1823881
rob 39 sydney 4928381
다음 결과 세트를 얻으려면 ..
id age phone
== === =====
alfred 30 3281283
joe 29 1283881
molly 20 1823881
.. SQL을 사용하면 문제가 발생합니다.
SELECT id, age, phone FROM dataset WHERE id IN ('alfred', 'joe', 'molly');
하나의 명령에서 동일한 결과 세트를 생성하는 해당 Cassandra API 호출은 무엇입니까?
해결책
CQL (Cassandra의 SQL 유사 쿼리 언어)는 이제 다음을 지원합니다.
SELECT ... WHERE keyalias IN ('key1', 'key2', 'key3', ...);
다른 팁
Alfred, Joe 및 Molly의 키가있는 multiget_slice를 수행 할 것입니다.
카산드라 등가는 아래에 설명 된대로 모델링 될 수 있습니다.
Users = { //this is a ColumnFamily
"alfred": { //this is the key to this Row inside the CF
"age":"30",
"city":"london",
"phone":"3281283"
}, // end row
// more rows...
}
여기서 "Alfred"는 (행) 키이고 행에는 3 개의 열이 있습니다. 나이, 도시 및 전화. (세 열의 타임 스탬프 필드를 생략했습니다)
제휴하지 않습니다 StackOverflow