HBase Consumer - 6.3

Talend ESB Mediation Developer Guide

EnrichVersion
6.3
EnrichProdName
Talend Data Fabric
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
task
Design and Development
EnrichPlatform
Talend ESB

The Camel HBase Consumer, will perform repeated scan on the specified HBase table and will return the scan results as part of the message. You can either specify header mapping (default) or body mapping. The later will just add the org.apache.camel.component.hbase.model.HBaseData as part of the message body.

hbase://table[?options]  

You can specify the columns that you want to be return and their types as part of the uri options:

hbase:mutable?family=name&qualifer=first&valueType=java.lang.String&family=address
&qualifer=number&valueType2=java.lang.Integer&rowType=java.lang.Long

The example above will create a model object that is consisted of the specified fields and the scan results will populate the model object with values. Finally the mapping strategy will be used to map this model to the camel message.

Supported URI options on consumer

Name

Default Value

Description

initialDelay

1000

Milliseconds before the first polling starts.

delay

500

Milliseconds before the next poll.

useFixedDelay

true

Controls if fixed delay or fixed rate is used. See ScheduledExecutorService in JDK for details.

timeUnit

TimeUnit.MILLISECONDS

time unit for initialDelay and delay options.

runLoggingLevel

TRACE

Camel 2.8: The consumer logs a start/complete log line when it polls. This option allows you to configure the logging level for that.

operation

CamelHBasePut

The HBase operation to perform. Supported values: CamelHBasePut, CamelHBaseGet, CamelHBaseDelete, and CamelHBaseScan.

maxResults

100

The maximum number of rows to scan. Supported operations: CamelHBaseScan.

mappingStrategyName

header

The strategy to use for mapping Camel messages to HBase columns. Supported values: header, or body.

mappingStrategyClassName

null

The class name of a custom mapping strategy implementation.

filters

null

A list of filters. Supported operations: CamelHBaseScan

remove

true

If the option is true, Camel HBase Consumer will remove the rows which it processes.

Header mapping options:

Name

Default Value

Description

rowId

 

The id of the row. This has limited use as the row usually changes per Exchange.

rowType

String

The type to covert row id to. Supported operations: CamelHBaseScan

family

 

The column family. *upports a number suffix for referring to more than one columns

qualifier

 

The column qualifier. *Supports a number suffix for referring to more than one columns

value

 

The value. Supports a number suffix for referring to more than one columns

rowModel

String

An instance of org.apache.camel.component.hbase.model.HBaseRow which describes how each row should be modeled

If the role of the rowModel is not clear, it allows you to construct the HBaseRow modle programmatically instead of "describing" it with uri options (such as family, qualifier, type etc).