143.4. HBase Producer
如前文所述,camel 为 HBase 提供生产端点。这可让您使用 camel 路由存储、删除、检索或查询 HBase 的数据。
hbase://table[?options]
其中 table 是表名称。
支持的操作有:
- put
- Get
- 删除
- 扫描
143.4.1. 支持的 URI 选项
HBase 组件支持 3 个选项,如下所列。
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
configuration (advanced) | 使用共享配置 | Configuration | |
poolMaxSize (common) | HTable 池中每个表保留的最大引用数。默认值为 10。 | 10 | int |
resolveProperty Placeholders (advanced) | 启动时组件是否应解析自身上的属性占位符。只有属于 String 类型的属性才能使用属性占位符。 | true | 布尔值 |
HBase 端点使用 URI 语法进行配置:
hbase:tableName
使用以下路径和查询参数:
143.4.2. 路径参数(1 参数):
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
tableName | 必需 表的名称 | 字符串 |
143.4.3. 查询参数(16 参数):
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
cellMappingStrategyFactory (common) | 使用自定义 CellMappingStrategyFactory,它负责映射单元。 | CellMappingStrategy Factory | |
filters (common) | 要使用的过滤器列表。 | list | |
mappingStrategyClassName (common) | 自定义映射规则实现的类名称。 | 字符串 | |
mappingStrategyName (common) | 将 Camel 消息映射到 HBase 列的策略。支持的值: header 或 body。 | 字符串 | |
rowMapping (common) | 将映射的键/值从 Map 映射到 HBaseRow。支持以下键: rowId - 行的 id。这有限,因为每个 Exchange 行通常会更改行。rowType - 要覆盖行 id 的类型。支持的操作:CamelHBaseScan. family - 列系列。支持引用多个列的数字后缀。限定符 - 列限定符。支持数字后缀来引用多个列。值 - 值。支持数字后缀来引用多个列 valueType - 值类型。支持数字后缀来引用多个列。支持的操作:CamelHBaseGet 和 CamelHBaseScan. | Map | |
rowModel (common) | 一个 org.apache.camel.component.hbase.model.HBaseRow 实例,它描述了如何对每行进行建模 | HBaseRow | |
userGroupInformation (common) | 定义与 HBase 通信的特权,如使用 kerberos。 | UserGroupInformation | |
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
maxMessagesPerPoll (consumer) | 获取最大消息数,作为每次轮询轮询的限制。默认为没有限制,但使用 0 或负数将其禁用为无限。 | int | |
operation (consumer) | 要执行的 HBase 操作 | 字符串 | |
remove (consumer) | 如果选项为 true,Camel HBase Consumer 将删除它处理的行。 | true | 布尔值 |
removeHandler (consumer) | 使用自定义 HBaseRemoveHandler,该处理程序在要删除的行时执行。 | HBaseRemoveHandler | |
exceptionHandler (consumer) | 要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。 | ExceptionHandler | |
exchangePattern (consumer) | 在消费者创建交换时设置交换模式。 | ExchangePattern | |
maxResults (producer) | 要扫描的最大行数。 | 100 | int |
同步 (advanced) | 设置是否应严格使用同步处理,或者 Camel 允许使用异步处理(如果受支持)。 | false | 布尔值 |