2013-06-14 3 views
0

하이브 테이블 열과 해당 카산드라 열을 매핑했습니다. 그러나 Hive 쿼리를 실행하는 동안 행 키를 제외한 모든 열에 대해 null 값이 반환됩니다.하이브 쿼리가 Cassandra 열매에 대해 실행하는 동안 null을 반환합니다.

일부 하이브 열에 HQL 수를 적용하면 결과는 0입니다. 동시에 행 키 수의 경우이 쿼리에서 정확한 수를 반환합니다 (4로 반환 됨). 무엇이 문제 일 수 있습니까? 모든 열에 대해 null 값을 반환하는 이유는 무엇입니까? 내가 문제를 이해하면

hive> select * from Users;  
OK 
21 NULL NULL NULL NULL 
22 NULL NULL NULL NULL 
20 NULL NULL NULL NULL 
25 NULL NULL NULL NULL 
+0

카산드라 열 패밀리 생성 문자열 qry = "create columnfamily 사용자 (키 varchar 기본 키, 이름 varchar, 암호 varchar, 메시지 varchar, 전화 bigint)"; – user2427718

답변

0

, 당신은 사용자 정의 기능이라고 NVL()는 테이블의 구조를 게시 할 경우

내가 더 효율적으로 응답 할 수 있습니다를 작성하기 위해 GenericUDF 클래스를 사용할 필요가 내가 틀렸다면 미안합니다 Thankyou

+0

외부 테이블 사용자 생성 (키 문자열, 이름 문자열, 비밀번호 문자열, 메시지 문자열, 전화 bigint) 저장 됨 'org.apache.hadoop.hive.cassandra.CassandraStorageHandler' WITH SERDEPROPERTIES ("cassandra.columns.mapping"= " : 키, : 열, : 값 ", "cassandra.ks.name "="HiveTesting ", "cassandra.ks.repfactor "="1 ", "cassandra.ks.strategy "="org.apache. cassandra.locator.SimpleStrategy ", "cassandra.cf.name "="사용자 ", "cassandra.host "="127.0.0.1 ", "cassandra.port "="9160 ", "cassandra.partitioner " = "org.apache.cassandra.dht.RandomPartitioner"); – user2427718

관련 문제