2013-04-26 3 views
1

나는 Hbase dbms에 초보자입니다. hbase의 명령 줄 셸을 시도하는 동안 나는 String 키로 인쇄되었지만 값이 16 진수 형식 (또는 그 종류의 항목)으로 인쇄되었으므로 rowkey, col 패밀리 및 col 한정자를 읽을 수 있음을 알았습니다. 정확한 개념은 무엇입니까?Hbase는 데이터를 16 진수 형식으로 저장합니까?

HBase를 (주) : 045 : 0 * 주사 'testtable' 행 COLUMN + CELL
19,992 열의 = 정보 : ismember 소인 = 1,366,957,536,788, 값 = \ x00에서

답변

2

No..Hbase는 전부를 기억 「바이트의 배열」 그렇게함으로써, 우리는 많은 종류의 데이터를 아무리 많이 저장하지 않고도 저장할 수 있습니다. 예를 들어 제품 관련 데이터를 hbase 테이블에 저장해야한다고 가정하면 ID, make, country, price 등이 있습니다. 이러한 각 매개 변수를 저장하려면 이러한 각 매개 변수의 개별 데이터 유형을 미리 처리해야합니다 확실히 약간의 오버 헤드가 추가 될 것입니다. 그리고 RDBMS와는 달리 hbase는 테이블 생성시이 모든 것을 요구하지 않습니다. 따라서 이러한 매개 변수의 데이터 유형이 내일 변경되거나 매개 변수를 추가하기로 결정한 경우 (새 데이터 유형과 함께) 매개 변수를 Bytes.ToBytes()에 랩핑하고 테이블로 밀어 넣기 만하면됩니다. 이 모든 것이 삽입을 더 빠르게합니다.

또한 직렬화 된 byte [] 형식으로 값을 저장하면 원시 형식으로 동일한 값을 저장하는 것과 비교할 때 수 바이트가 절약됩니다. BigData를 다룰 때 이러한 사소한 절약이 상당히 중요합니다.

그래서이 개념은 Hibernate가 모든 것을 더 빠르게 저장하고 더 효율적으로 저장소를 저장하여 내부 데이터 구조의 오버 헤드를 최소화하도록하는 개념입니다.

희망 사항. 질문에 대한 답변입니다.

+0

답변. 고마워요,하지만 여전히 내 원래의 질문이 나뭇잎 .. hbase shell.From 자바 API에서 바이트 배열을 해석하는 방법, 나는 데이터를 검색 할 수 있는지 여부를 제대로 예상대로 저장하거나 볼 수 있습니다. ..하지만 명령 행은 어떨까요? o/p의 모든 16 진수 문자. 여기서 도움을 청하십시오. –

+0

어떤 버전을 사용하고 있습니까?이 JIRA가 도움이 될 것입니다 : https://issues.apache.org/jira/browse/HBASE-6592 .. – Tariq

+0

0.94.6.1 버전을 사용하고 있습니다. –

관련 문제