Description:

Executes a HiveQL DDL/DML command (UPDATE, INSERT, e.g.). The content of an incoming FlowFile is expected to be the HiveQL command to execute. The HiveQL command may use the ? to escape parameters. In this case, the parameters to use must exist as FlowFile attributes with the naming convention hiveql.args.N.type and hiveql.args.N.value, where N is a positive integer. The hiveql.args.N.type is expected to be a number indicating the JDBC Type. The content of the FlowFile is expected to be in UTF-8 format.

Tags:

sql, hive, put, database, update, insert

Properties:
In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values.

Name Default Value Allowable Values Description
Hive Database Connection Pooling Service Controller Service API:
HiveDBCPService
Implementation:
HiveConnectionPool
The Hive Controller Service that is used to obtain connection(s) to the Hive database
Batch Size 100 The preferred number of FlowFiles to put to the database in a single transactionThe SSL Context Service used to provide client certificate information for TLS/SSL connections. This service only applies if the Elasticsearch endpoint(s) have been secured with TLS/SSL.
Character Set UTF-8 Specifies the character set of the record data.

Relationships:

Name Description
retry A FlowFile is routed to this relationship if the database cannot be updated but attempting the operation again may succeed
success A FlowFile is routed to this relationship after the database is successfully updated
failure A FlowFile is routed to this relationship if the database cannot be updated and retrying the operation will also fail, such as an invalid query or an integrity constraint violation

Reads Attributes:

Name Description
hiveql.args.N.type Incoming FlowFiles are expected to be parametrized HiveQL statements. The type of each Parameter is specified as an integer that represents the JDBC Type of the parameter.
hiveql.args.N.value Incoming FlowFiles are expected to be parametrized HiveQL statements. The value of the Parameters are specified as hiveql.args.1.value, hiveql.args.2.value, hiveql.args.3.value, and so on. The type of the hiveql.args.1.value Parameter is specified by the hiveql.args.1.type attribute.

Writes Attributes:

None specified.

State management:

This component does not store state.

Restricted:

This component is not restricted.