HBase Sink 커넥터
HBase Sink 커넥터
HBase sink 커넥터는 Pulsar 토픽에서 메시지를 가져와 HBase 테이블에 저장하는 커넥터예요. Pulsar의 데이터를 Apache HBase에 써 넣을 때 사용해요.
참고: 모든 Pulsar 커넥터는 download page에서 내려받을 수 있어요.
출처: 문서
본문
구성 (Configuration)
HBase sink 커넥터의 구성에는 다음과 같은 프로퍼티가 있어요.
프로퍼티 (Property)
| 이름 | 타입 | 기본값 | 필수 | 설명 |
|---|---|---|---|---|
| hbaseConfigResources | String | None | false | HBase 시스템 구성 파일인 hbase-site.xml이에요. |
| zookeeperQuorum | String | None | true | hbase.zookeeper.quorum 값에 대한 HBase 시스템 구성이에요. |
| zookeeperClientPort | String | 2181 | false | hbase.zookeeper.property.clientPort 값에 대한 HBase 시스템 구성이에요. |
| zookeeperZnodeParent | String | /hbase | false | zookeeper.znode.parent 값에 대한 HBase 시스템 구성이에요. |
| tableName | String | None | true | HBase 테이블로, 값은 namespace:tableName 형식이에요. |
| rowKeyName | String | None | true | HBase 테이블의 rowkey 이름이에요. |
| familyName | String | None | true | HBase 테이블의 컬럼 패밀리 이름이에요. |
| qualifierNames | String | None | true | HBase 테이블의 컬럼 한정자(qualifier) 이름이에요. |
| batchTimeMs | Long | 1000l | false | HBase 테이블 작업 타임아웃(밀리초)이에요. |
| batchSize | int | 200 | false | HBase 테이블에 적용되는 업데이트의 배치 크기예요. |
예제 (Example)
HBase sink 커넥터를 사용하기 전에 다음 방법 중 하나로 구성 파일을 만들어야 해요.
- JSON
{
"configs": {
"hbaseConfigResources": "hbase-site.xml",
"zookeeperQuorum": "localhost",
"zookeeperClientPort": "2181",
"zookeeperZnodeParent": "/hbase",
"tableName": "pulsar_hbase",
"rowKeyName": "rowKey",
"familyName": "info",
"qualifierNames": [ 'name', 'address', 'age']
}
}
- YAML
configs:
hbaseConfigResources: "hbase-site.xml"
zookeeperQuorum: "localhost"
zookeeperClientPort: "2181"
zookeeperZnodeParent: "/hbase"
tableName: "pulsar_hbase"
rowKeyName: "rowKey"
familyName: "info"
qualifierNames: [ 'name', 'address', 'age']