2012-08-23 4 views
1

SliceQuery < Long, String, String>은 keytype이 길고 열 이름이 string이고 열 값이 string이라고 말합니다. QueryResult를 사용하여 조각 쿼리를 실행할 때 ColumnSlice < String,> 모든 열을 가져올 수 있지만 키가 길어 값이 긴 형식의 열이 있어야합니다. 여기서 유형 안전성이 어떻게 작동 하는지를보기에는 다소 혼란 스럽습니다 (질의 결과는 열 유형을 얻을 것입니다). 또한 문자열 이외의 값 유형을 가진 열이 있으면 문제가 발생해야합니다.다른 값 유형이있는 열 읽기

다른 값 유형의 열을 쿼리하는 데 사용할 수있는 일반적인 슬라이스 쿼리를 갖는 방법은 무엇입니까?

추신 : 저는 cassandra/hector를 처음 사용합니다.

감사합니다.

답변

1

거의. 첫 번째 유형은 사용자가 지적한대로 행 키 유형이지만 행 키는 열로 저장되지 않습니다. 행 키는 다른 특별한 장소에 저장됩니다. 이것은 관계형 DB 세계 (나 같은)를 통해 여행하는 사람들이 잡아 먹는 여행 중 하나입니다.

다른 유형의 열 값을 관리하는 방법은 두 가지 방법이 있습니다. 먼저 값을 바이트 배열로 저장하고 직접 직렬화합니다. 둘째, 열 이름의 키를 사용하여 처리 할 열 및 값 유형을 알려줍니다. 올바른 형식을 알았 으면 적절한 serializer를 사용하여 바이트 값을 올바른 형식의 변수로 deserialize 할 수 있습니다. 자신 만의 복잡한 객체와 특수한 유형의 경우, 독자적인 시리얼 라이저를 작성할 수 있습니다.