public class JdbcInsertBolt extends AbstractJdbcBolt
Basic bolt for writing to any Database table.
Note: Each JdbcInsertBolt defined in a topology is tied to a specific table.collector, configKey, connectionProvider, jdbcClient, queryTimeoutSecs| Constructor and Description |
|---|
JdbcInsertBolt(ConnectionProvider connectionProvider,
JdbcMapper jdbcMapper) |
| Modifier and Type | Method and Description |
|---|---|
void |
declareOutputFields(OutputFieldsDeclarer outputFieldsDeclarer)
Declare the output schema for all the streams of this topology.
|
void |
prepare(Map<String,Object> map,
TopologyContext topologyContext,
OutputCollector collector)
Subclasses should call this to ensure output collector and connection provider are set up, and finally jdbcClient is initialized properly.
|
protected void |
process(Tuple tuple)
Process a single non-tick tuple of input.
|
JdbcInsertBolt |
withInsertQuery(String insertQuery) |
JdbcInsertBolt |
withQueryTimeoutSecs(int queryTimeoutSecs) |
JdbcInsertBolt |
withTableName(String tableName) |
cleanupexecute, onTickTuplegetComponentConfigurationclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetComponentConfigurationpublic JdbcInsertBolt(ConnectionProvider connectionProvider, JdbcMapper jdbcMapper)
public JdbcInsertBolt withTableName(String tableName)
public JdbcInsertBolt withInsertQuery(String insertQuery)
public JdbcInsertBolt withQueryTimeoutSecs(int queryTimeoutSecs)
public void prepare(Map<String,Object> map, TopologyContext topologyContext, OutputCollector collector)
AbstractJdbcBoltSubclasses should call this to ensure output collector and connection provider are set up, and finally jdbcClient is initialized properly.
Called when a task for this component is initialized within a worker on the cluster. It provides the bolt with the environment in which the bolt executes.
This includes the:
prepare in interface IBoltprepare in class AbstractJdbcBoltmap - The Storm configuration for this bolt. This is the configuration provided to the topology merged in with cluster configuration on this machine.topologyContext - This object can be used to get information about this task’s place within the topology, including the task id and component id of this task, input and output information, etc.collector - The collector is used to emit tuples from this bolt. Tuples can be emitted at any time, including the prepare and cleanup methods. The collector is thread-safe and should be saved as an instance variable of this bolt object.protected void process(Tuple tuple)
BaseTickTupleAwareRichBoltProcess a single non-tick tuple of input. Implementation needs to handle ack manually. More details on IBolt.execute(Tuple).
process in class BaseTickTupleAwareRichBolttuple - The input tuple to be processed.public void declareOutputFields(OutputFieldsDeclarer outputFieldsDeclarer)
IComponentDeclare the output schema for all the streams of this topology.
outputFieldsDeclarer - this is used to declare output stream ids, output fields, and whether or not each output stream is a direct streamCopyright © 2021 The Apache Software Foundation. All rights reserved.