내 키는 세 가지 구성 요소가 NUM, 유형 이름Partial Key 스캐닝으로 효율적인 페칭을 위해 HBase에 데이터를 저장하는 방법은 무엇입니까?
'형태'는 두 종류의 B 및 NUM 예컨대 이상의 값을 가질 수있다 동안 0,1,2 .., 30
num과 관련하여 데이터를 가져와야합니다. 즉, 지정된 num 및 유형의 키가있는 모든 행을 가져와야합니다.
I 중 하나를 수행 할 수 있습니다 형태로 데이터를 저장 : 1. num|type|name
또는 2 type|num|name
데이터를 통해 HBase를 스캔 내가 데이터를 저장하는 가장 좋은 전략 인 부분 키 스캔을 사용하는 경우 어떻게 고려?
이
내가 내 부분 키 스캔 설정하는 방법이다 : 나는 구분 기호로 파이프를 사용하여에 추천 할 것입니다 1.scan.setStartRow(Bytes.toBytes(num);
scan.setStopRow(Bytes.toBytes(num+1);
2.
scan.setStartRow(Bytes.toBytes(type + "|" + num);
scan.setStopRow(Bytes.toBytes(type + "|" + (num+1));
답장을 보내 주셔서 감사합니다.몇 가지 질문 : 구분 기호는 모든 행에 대해 동일하므로 정렬 순서에 어떤 영향을 미치는지 정확하게 이해하는지 확신 할 수 없습니다. 데이터 크기에 영향을 미칠 수 있습니까? –
우리가 w.r.t.를 스캔하기로 결정하면. 예 : 특정 숫자는 '2'입니다. 데이터가 num | 유형으로 유지되는 경우. 가능성은 모든 2가 단일 파일에있을 것입니다. 이 경우 병렬 처리가 줄어들 것인가? –
반대로 형식 | num으로 유지되면 모든 A | 2는 하나의 파일에 있고 모든 B | 2는 다른 파일에 있습니다. 2를 검색하는 동안 병렬 처리가 증가합니까? –