페이스북, 트위터, 야후가 선택한 실시간 랜덤 엑세스 NoSQL!
거의 무한한 데이터를 수용하는, 확장성 있는 스토리지 솔루션을 찾는다면 페이스북, 트위터, 야후가 선택한 아파치 HBase가 그 해답이다. 구글 빅테이블의 오픈소스 구현인 HBase는 수십억 개의 로우와 수백만 개의 컬럼을 저장하면서도 안정적인 입출력 성능을 보장한다. HBase 커미터가 쓴 이 책은 HBase에 대한 여러분의 질문에 의미 있는 대답을 선사할 것이다.
커미터가 쓴 'HBase'의 정수
모두가 코딩에 몰두할 때 끊임없이 문서화를 주창하고 문서화한 커미터 라스 조지보다 HBase에 대해 더 완벽하게 설명할 사람은 이 세상에 없을 것이다. 이 책은 '완벽 가이드'라는 이름에 걸 맞게 HBase를 내려받고, 빌드하고, 실행하고, 운용하고, 개발하는 데 필요한 방대한 내용이 담겨 있다.
HBase 버전에 대하여
HBase는 지금 이 순간에도 빠른 속도로 개발이 진행 중이다. 이 책은 HBase 0.91.0 버전의 리비전 1130916 및 당시 준비 중이던 0.92.0 버전의 로드맵을 기준으로 집필되었으며, 번역이 완료된 시점의 HBase 버전은 0.94.2다. 이후 릴리즈 내용은 '부록 B'에 반영해두었다(다행스럽게도 변경된 내용이 많지 않다). 리비전 1130916 이래부터 현재까지 변경된 API는 저자가 관리하는 JDiff 페이지에서 추적할 수 있다.
대상 독자
CHAPTER 1 소개 1.1 빅데이터의 여명 1.2 관계형 데이터베이스 시스템의 문제점 1.3 비관계형 데이터베이스 시스템, Not-Only SQL인가 NoSQL인가? 1.3.1 기준 1.3.2 확장성 1.3.3 데이터베이스 (비)정규화 1.4 구성 요소 1.4.1 배경 1.4.2 테이블, 로우, 컬럼, 셀 1.4.3 자동 샤딩 1.4.4 저장소 API 1.4.5 구현 1.4.6 정리 1.5 HBase : 하둡 데이터베이스 1.5.1 역사 1.5.2 용어 1.5.3 정리 CHAPTER 2 설치 2.1 속성 가이드 2.2 요구 사항 2.2.1 하드웨어 요구 사항 2.2.2 소프트웨어 요구 사항 2.3 HBase를 위한 파일시스템 2.3.1 로컬 파일시스템 2.3.2 하둡 파일시스템 2.3.3 S3 2.3.4 기타 파일시스템 2.4 설치 시 선택 사항 2.4.1 아파치 이진 릴리즈 2.4.2 소스코드에서 빌드하기 2.5 실행 방식 2.5.1 단일 방식 2.5.2 분산 방식 2.6 설정 2.6.1 hbase.site.xml 및 hbase.default.xml 2.6.2 hbase.env.sh 2.6.3 리전 서버 2.6.4 log4j.properties 2.6.5 설정 사례 2.6.6 클라이언트 설정 2.7 배치 2.7.1 스크립트 기반 2.7.2 아파치 월 2.7.3 퍼핏과 셰프 2.8 클러스터 운용 2.8.1 설치된 시스템 확정 및 운용 2.8.2 웹 기반 UI 소개 2.8.3 셸 소개 2.8.4 클러스터 중단하기 CHAPTER 3 클라이언트 API : 기본 기능 3.1 일반 정보 3.2 CRUD 기능 3.2.1 Put 메소드 3.2.2 Get 메소드 3.2.3 Delete 메소드 3.3 일괄처리 연산 3.4 로우 락 3.5 스캔 3.5.1 소개 3.5.2 ResultScanner 클래스 3.5.3 캐싱 대 일괄처리 3.6 기타 기능 3.6.1 HTable의 유틸리티 메소드 3.6.2 Bytes 클래스 CHAPTER 4 클라이언트 API : 고급 기능 4.1 필터 4.1.1 필터 소개 4.1.2 비교 필터 4.1.3 전용 필터 4.1.4 보조 필터 4.1.5 필터 리스트 - FilterList 4.1.6 사용자 정의 필터 4.1.7 필터 요약 4.2 카운터 4.2.1 카운터 소개 4.2.2 단일 카운터 4.2.3 복수 카운터 4.3 보조 처리기 4.3.1 보조 처리기 소개 4.3.2 Coprocessor 인터페이스 4.3.3 보조 처리기 로드 4.3.4 RegionObserver 클래스 4.3.5 MasterObserver 클래스 4.3.6 엔드포인트 보조 처리기 4.4 HTablePool 4.5 연결 처리 CHAPTER 5 클라이언트 API : 관리 기능 5.1 스키마 정의 5.1.1 테이블 5.1.2 테이블 속성 5.1.3 컬럼패밀리 5.2 HBaseAdmin 5.2.1 기본 기능 5.2.2 테이블 관련 기능 5.2.3 스키마 관련 기능 5.2.4 클러스터 관련 기능 5.2.5 클러스터 상태 정보 CHAPTER 6 클라이언트 종류 6.1 REST, 쓰리프트, 에이브로 6.2 대화형 클라이언트 6.2.1 네이티브 자바 6.2.2 REST 서버 6.2.3 쓰리프트 6.2.4 에이브로 6.2.5 기타 클라이언트 6.3 일괄처리 클라이언트 6.3.1 맵리듀스 6.3.2 하이브 6.3.3 피그 6.3.4 캐스케이딩 6.4 셸 6.4.1 기본 사항 6.4.2 명령어 6.4.3 스크립팅 6.5 웹 기반 UI 6.5.1 마스터 UI 6.5.2 리전 서버 UI 6.5.3 공통 페이지 CHAPTER 7 맵리듀스 연동 7.1 프레임워크 7.1.1 맵리듀스 소개 7.1.2 주요 클래스 7.1.3 지원 클래스 7.1.4 맵리듀스의 집약성 7.1.5 테이블 분할 7.2 HBase 기반 맵리듀스 7.2.1 준비 7.2.2 데이터 타깃 7.2.3 데이터 소스 7.2.4 데이터 소스 및 타깃 7.2.5 사용자 정의 클래스 CHAPTER 8 아키텍처 8.1 탐색 대 전송 8.1.1 B+ 트리 8.1.2 LSM 트리 8.2 저장소 8.2.1 개요 8.2.2 쓰기 경로 8.2.3 파일 8.2.4 HFile 형식 8.2.5 KeyValue 형식 8.3 WAL 8.3.1 개요 8.3.2 HLog 클래스 8.3.3 HLogKey 클래스 8.3.4 WALEdit 클래스 8.3.5 LogSyncer 클래스 8.3.6 LogRoller 클래스 8.3.7 재현 8.3.8 지속성 8.4 읽기 경로 8.5 리전 탐색 8.6 리전 생명주기 8.7 주키퍼 8.8 레플리케이션 8.8.1 로그 변경 사항의 생명주기 8.8.2 내부 동작 CHAPTER 9 고급 사용법 9.1 키 설계 9.1.1 개념 9.1.2 가늘고 긴 테이블과 짧고 넓은 테이블 9.1.3 부분 키 스캔 9.1.4 페이지네이션 9.1.5 시간적으로 연속된 데이터 9.1.6 시간순으로 정렬된 관계 9.2 고급 스키마 9.3 보조 색인 9.3.1 클라이언트에서 관리하는 방식 9.3.2 Indexed-Transaction HBase(ITHBase) 9.3.3 Indexed HBase(IHBase) 9.3.4 보조 처리기 9.4 검색 기능 연동 9.4.1 클라이언트에서 관리하는 방식 9.4.2 루씬 9.4.3 HBasene 9.4.4 보조 처리기 9.5 트랜잭션 9.5.1 ITHBase 9.5.2 주키퍼 9.6 블룸 필터 9.7 버저닝 9.7.1 자동 버저닝 9.7.2 수동 버저닝 CHAPTER 10 클러스터 모니터링 10.1 소개 10.2 지표 측정 프레임워크 10.2.1 상황정보, 레코드, 지표 10.2.2 마스터 지표 10.2.3 리전 서버 지표 10.2.4 RPC 지표 10.2.5 JVM 지표 10.2.6 기본 정보 지표 10.3 갱글리아 10.3.1 설치 10.3.2 사용하기 10.4 JMX 10.4.1 제이콘솔 10.4.2 JMX 원격 API 10.5 나기오스 CHAPTER 11 성능 조율 11.1 가비지 컬렉션 조율 11.2 멤스토어 로컬 할당 버퍼 11.3 압축 11.3.1 가용 코덱 11.3.2 설치 확인 11.3.3 압축 기능 활성화 11.4 분할 및 컴팩션 최적화 11.4.1 분할 수동 관리 11.4.2 리전 핫스팟 처리 11.4.3 리전의 사전 분할 11.5 로드밸런싱 11.6 리전 병합 11.7 클라이언트 API 모범 사례 11.8 설정 11.9 부하 테스트 11.9.1 성능 평가 11.9.2 YCSB CHAPTER 12 클러스터 관리 12.1 클러스터 운용 작업 12.1.1 노드 디커미션 12.1.2 단계적 재시작 12.1.3 서버 추가 12.2 데이터 작업 12.2.1 들여오기 및 내보내기 도구 12.2.2 테이블 복제 도구 12.2.3 대용량 데이터 들여오기 12.2.4 레플리케이션 12.3 추가 작업 12.3.1 공존 클러스터 12.3.2 포트 설정 12.4 로그 레벨 변경 12.5 문제 해결 12.5.1 HBase Fsck 12.5.2 로그 분석 12.5.3 공통 문제 부록 A : HBase 설정 속성 부록 B : 릴리즈 노트 부록 C : HBase 버전 업그레이드 부록 D : 배포판 부록 E : 허시 SQL 스키마 부록 F : HBase 대 빅테이블
자료명 | 등록일 | 다운로드 |
---|---|---|
예제소스 | 2019-07-22 | 다운로드 |
하이브 완벽 가이드: 하둡을 이용한 SQL 기반 빅데이터 분석 도구
에드워드 카프리올로 , 딘 웜플러 , 제이슨 러더글렌
머하웃 완벽 가이드(Mahout in Action): 하둡에 딱 맞는 빅데이터를 활용한 기계학습
션 오웬 , 로빈 애닐 , 테드더닝 , 엘렌 프리드만
맵리듀스 디자인 패턴 : 하둡과 빅데이터에 효과적인 6가지 방법론과 26가지 실용 패턴
도널드 마이너 , 아담 슈크