[HADOOP] HBase는 HDFS에 대한 무작위 액세스를 어떻게 가능하게합니까?
HADOOPHBase는 HDFS에 대한 무작위 액세스를 어떻게 가능하게합니까?
HBase가 HDFS에 저장된 파일을 가지고있는 데이터베이스라는 점을 감안할 때, HDFS 내에서 단 하나의 데이터에 무작위로 액세스 할 수있는 방법은 무엇입니까? 어떤 방법으로 이것을 달성 할 수 있습니까?
Apache HBase 참조 가이드 :
두 장을 모두 스캔해도이 질문에 대한 높은 수준의 대답은 밝혀지지 않았습니다.
그렇다면 HBase는 HDFS에 저장된 파일에 무작위로 액세스 할 수 있습니까?
해결법
-
==============================
1.HBase는 해당 키에 의해 인덱싱 (정렬) 된 HFiles에 데이터를 저장합니다. 임의의 키가 주어지면 클라이언트는 지역 서버가 행을 요청할시기를 결정할 수 있습니다. 영역 서버는 행을 검색 할 영역을 결정한 다음 올바른 행에 액세스하기 위해 영역을 통해 2 진 검색을 수행합니다. 이는 블록 수, 블록 크기, 시작 키 및 종료 키를 알 수있는 충분한 통계를 확보함으로써 수행됩니다.
HBase는 해당 키에 의해 인덱싱 (정렬) 된 HFiles에 데이터를 저장합니다. 임의의 키가 주어지면 클라이언트는 지역 서버가 행을 요청할시기를 결정할 수 있습니다. 영역 서버는 행을 검색 할 영역을 결정한 다음 올바른 행에 액세스하기 위해 영역을 통해 2 진 검색을 수행합니다. 이는 블록 수, 블록 크기, 시작 키 및 종료 키를 알 수있는 충분한 통계를 확보함으로써 수행됩니다.
예 : 테이블에 10TB의 데이터가 포함될 수 있습니다. 그러나 테이블은 크기가 4GB 인 영역으로 나뉩니다. 각 영역에는 시작 / 끝 키가 있습니다. 클라이언트는 테이블의 영역 목록을 가져 와서 찾고있는 키가있는 영역을 결정할 수 있습니다. 영역은 블록으로 분할되므로 영역 서버는 해당 블록을 통해 2 진 검색을 수행 할 수 있습니다. 블록은 기본적으로 키, 속성, 값, 버전의 긴 목록입니다. 각 블록에 대해 시작 키가 무엇인지 알면 액세스 할 파일 하나와 바이트 오프셋 (블록)이 이진 검색에있는 곳을보기 위해 읽기 시작을 결정할 수 있습니다.
-
==============================
2.hbase를 사용하여 hbase acess hdfs 파일을 hbase하십시오. 당신은 세부 사항을 얻기 위하여 url를 검사 할 수있다 : http://hbase.apache.org/book/hfilev2.html
hbase를 사용하여 hbase acess hdfs 파일을 hbase하십시오. 당신은 세부 사항을 얻기 위하여 url를 검사 할 수있다 : http://hbase.apache.org/book/hfilev2.html
from https://stackoverflow.com/questions/21248903/how-does-hbase-enable-random-access-to-hdfs by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] hadoop 분산 캐시에서 파일 액세스하기 (0) | 2019.07.09 |
---|---|
[HADOOP] JAVA_HOME이 (가) hadoop으로 잘못 설정되었습니다. (0) | 2019.07.09 |
[HADOOP] 실험용 무료 Hadoop 클러스터 (0) | 2019.07.09 |
[HADOOP] copyFromLocal 스위치를 사용하여 데이터를 hdfs로 이동 (0) | 2019.07.09 |
[HADOOP] Mapreduce / Hadoop의 두 가지 데이터 세트 조인 (0) | 2019.07.09 |