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: 특정 행 데이터를 전달하는 이벤트

동작 흐름 (개념)

  1. 연결 생성: HiveEndPoint를 지정하고 newConnection()으로 스트리밍 연결을 만듭니다.
  2. 트랜잭션 배치 열기: fetchTransactionBatch()로 트랜잭션 배치를 가져옵니다.
  3. 레코드 쓰기: 배치에 insert / update / delete 이벤트를 전달합니다.
  4. 커밋: 배치를 커밋해 변경사항을 테이블에 반영합니다.

사용 조건

  • 대상 테이블이 ACID(트랜잭션) 지원이 가능한 테이블이어야 합니다.
  • 지정된 파티션·버킷 구조에 맞춰 스트리밍을 설정해야 합니다.

참고: 정확한 클래스·메서드 시그니처, 테이블 요구사항, 예제 코드는 원문 문서를 참고하세요.

더 알아보기 (Learn more)

  • ACID 테이블과 스트리밍 API를 함께 공부하면 실시간 데이터 파이프라인을 Hive에 직접 연결할 수 있어요. 트랜잭션 커밋·롤백 동작을 꼭 확인해 보세요.