목록 보기
HBase상 트랜잭션 라이브러리 Haeinsa를 소개합니다
백엔드

HBase상 트랜잭션 라이브러리 Haeinsa를 소개합니다

타다
타다
2013년 10월 10일

두줄요약

HBase의 다중 행·테이블 트랜잭션 부재를 해결하기 위해 Haeinsa를 소개했습니다. ACID와 직렬화 격리를 제공하며, 연산 패턴별 성능 특성을 설명합니다.

문제 상황

  • HBase의 단일 행 원자성만으로 여러 행·테이블을 함께 처리하는 서비스 로직 구현의 어려움
  • 기존 HBase 트랜잭션 프로젝트의 서비스 적용이 어려운 성능 문제

구조와 흐름

  • Percolator에서 영감을 받은 HBase 클라이언트 트랜잭션 라이브러리 Haeinsa
  • 트랜잭션 시작 후 Put·Get·Delete·Scan 연산 수행, 커밋 시 변경 사항 일괄 반영
  • 테이블별 Lock Column Family 추가와 클라이언트 라이브러리만으로 기존 HBase 클러스터 적용

선택 이유

  • Multi-Row·Multi-Table ACID와 Serializability 제공
  • HBase 노드 증설에 따른 처리량 확장과 서버·클라이언트 장애 상황의 트랜잭션 무결성 지향

성능/운영 포인트

  • 동일 Row에 여러 연산이 집중될수록 커밋 시 일괄 반영 효과로 성능상 유리
  • 메시지 전송 시뮬레이션에서 일반 HBase 대비 높은 성능 관찰
  • Row별 단일 연산의 불리한 경우 일반 HBase 대비 처리량·응답시간 2~3배 저하

다음 읽기

#HBase 주제를 이어서 읽기

HBase Meetup - 비트윈에서 HBase를 사용하는 방법

비트윈은 채팅의 높은 쓰기 성능과 대량 로그 분석을 위해 HBase를 활용했습니다.\nMapReduce·MySQL 분석 흐름과 HBase 다중 행 트랜잭션 라이브러리 Haeinsa를 소개했습니다.

타다
타다
백엔드

댓글 0개

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

댓글을 불러오는 중...