목록 보기
HBase 설정 최적화하기
백엔드

HBase 설정 최적화하기

타다
타다
2013년 4월 23일

두줄요약

HBase·HDFS 설정을 읽기 중심 서비스와 OLAP 환경에 맞춰 최적화한 사례를 정리했습니다. 캐시·메모리·네트워크·컴팩션 설정의 효과와 운영상 주의점을 설명합니다.

구조와 흐름

  • HBase를 HDFS 기반 분산 컬럼 지향 NoSQL DB로 구성하고 RegionServer 추가 기반 수평 확장
  • EC2 m2.4xlarge의 대용량 메모리를 Read/Write 캐시로 활용하고 HDFS Datanode·RegionServer 동시 배치
  • Active-standby NameNode, Zookeeper Cluster, 다중 HBase Master로 데이터 저장 계층 SPOF 제거

성능/운영 포인트

  • RegionServer handler count를 10에서 100으로 높여 약 2배 Throughput 확보
  • block cache 50%, memstore lower/upper limit 20%·30%로 읽기 중심 워크로드의 캐시와 쓰기 버퍼 조정
  • tcpnodelay 활성화 후 Get/Put tail latency 완화 및 평균 Latency 절반 수준 감소

주의할 점

  • 복제 수 증가는 데이터 안정성 향상 대신 Write 속도 저하
  • block cache와 memstore upper limit 합계 80% 제한, 과도한 Heap 할당에 따른 GC 문제 고려
  • Read short-circuit의 checksum 및 Major compaction 관련 버그 가능성 확인 필요

적용해볼 점

  • Major compaction은 off-peak 시간대에 수동 실행하고 Region split도 데이터량에 맞춰 수동 조정
  • CMS GC, MSLAB, GC 로그 분석으로 Stop-the-world GC 시간 관찰
  • Bloom filter는 StoreFile 수, 캐시 적중률, 테이블 스키마를 기준으로 ROW·ROWCOL 옵션 검토

다음 읽기

#HBase 주제를 이어서 읽기

비트윈의 HBase 스키마 해부

비트윈의 HBase 저장 구조와 Datastore 기반 접근 방식을 설명했습니다. 트랜잭션·인덱스·키 설계로 성능과 무결성을 확보했습니다.

타다
타다
백엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...