HCatalog 스트리밍 뮤테이션 API
HCatalog 스트리밍 뮤테이션 API (HCatalog Streaming Mutation API)
HCatalog의 스트리밍(streaming) 기능은 ACID 트랜잭션을 지원하는 테이블에 대용량 데이터를 실시간으로 쓰거나 업데이트(UPDATE/DELETE)할 수 있게 해 주는 API예요. 이 문서는 스트리밍 뮤테이션 API의 사용 방법을 다룹니다.
출처: 문서
본문
HCatalog 스트리밍 뮤테이션 API를 설명합니다.
개요 (Overview)
HCatalog의 스트리밍 API는 Hive ACID 테이블에 대해 지속적인 스트림으로 데이터를 기록하거나, 기존 행을 갱신(UPDATE)·삭제(DELETE)하는 것을 지원합니다. 대량의 실시간 데이터를 수집하는 등 배치 로드로는 부족한 시나리오에서 유용합니다.
핵심 구성 요소
- HiveEndPoint: 스트리밍 세션과 쓰기 트랜잭션을 관리하는 진입점
- StreamingConnection / TransactionBatch: 트랜잭션 배치를 열어 레코드를 추가·갱신·삭제하는 단위
- MutationEvent / RecordWriter: 특정 행 데이터를 전달하는 이벤트
동작 흐름 (개념)
- 연결 생성: HiveEndPoint를 지정하고
newConnection()으로 스트리밍 연결을 만듭니다. - 트랜잭션 배치 열기:
fetchTransactionBatch()로 트랜잭션 배치를 가져옵니다. - 레코드 쓰기: 배치에
insert/update/delete이벤트를 전달합니다. - 커밋: 배치를 커밋해 변경사항을 테이블에 반영합니다.
사용 조건
- 대상 테이블이 ACID(트랜잭션) 지원이 가능한 테이블이어야 합니다.
- 지정된 파티션·버킷 구조에 맞춰 스트리밍을 설정해야 합니다.
참고: 정확한 클래스·메서드 시그니처, 테이블 요구사항, 예제 코드는 원문 문서를 참고하세요.
더 알아보기 (Learn more)
- ACID 테이블과 스트리밍 API를 함께 공부하면 실시간 데이터 파이프라인을 Hive에 직접 연결할 수 있어요. 트랜잭션 커밋·롤백 동작을 꼭 확인해 보세요.