Description:
Execute provided Cassandra Query Language (CQL) statement on a Cassandra 1.x or 2.x cluster. The content of an incoming FlowFile is expected to be the CQL command to execute. The CQL command may use the ? to escape parameters. In this case, the parameters to use must exist as FlowFile attributes with the naming convention cql.args.N.type and cql.args.N.value, where N is a positive integer. The cql.args.N.type is expected to be a lowercase string indicating the Cassandra type.
Tags:
cassandra, cql, put, insert, update, set
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, and whether a property is considered “sensitive”, meaning that its value will be encrypted. Before entering a value in a sensitive property, ensure that the nifi.properties file has an entry for the property nifi.sensitive.props.key.
Name | Default Value | Allowable Values | Description |
Cassandra Contact Points | Contact points are addresses of Cassandra nodes. The list of contact points should be comma-separated and in hostname:port format. Example node1:port,node2:port,.... The default client port for Cassandra is 9042, but the port(s) must be explicitly specified. | ||
Keyspace | The Cassandra Keyspace to connect to. If no keyspace is specified, the query will need to include the keyspace name before any table reference. | ||
SSL Context Service |
Controller Service API: SSLContextService Implementation: StandardSSLContextService |
The SSL Context Service used to provide client certificate information for TLS/SSL connections. | |
Client Auth | REQUIRED |
* WANT * REQUIRED * NONE |
Client authentication policy when connecting to secure (TLS/SSL) cluster. Possible values are REQUIRED, WANT, NONE. This property is only used when an SSL Context has been defined and enabled. |
Username | Username to access the Cassandra cluster | ||
Password |
Password to access the Cassandra cluster Sensitive Property: true |
||
Consistency Level | ONE |
* ANY * ONE * TWO * THREE * QUORUM * ALL * LOCAL_QUORUM * EACH_QUORUM * SERIAL * LOCAL_SERIAL * LOCAL_ONE |
The strategy for how many replicas must respond before results are returned. |
Character Set | UTF-8 | Specifies the character set of the record data. | |
Max Wait Time | 0 seconds | The maximum amount of time allowed for a running CQL select query. Must be of format <duration> <TimeUnit> where <duration> is a non-negative integer and TimeUnit is a supported Time Unit, such as: nanos, millis, secs, mins, hrs, days. A value of zero means there is no limit. |
Relationships:
Name | Description |
retry | A FlowFile is transferred to this relationship if the statement cannot be executed successfully but attempting the operation again may succeed. |
failure | CQL statement execution failed. |
success | Successfully executed CQL statement. |
Reads Attributes:
Name | Description |
cql.args.N.type | Incoming FlowFiles are expected to be parameterized CQL statements. The type of each parameter is specified as a lowercase string corresponding to the Cassandra data type (text, int, boolean, e.g.). In the case of collections, the primitive type(s) of the elements in the collection should be comma-delimited, follow the collection type, and be enclosed in angle brackets (< and >), for example set<text> or map<timestamp, int>. |
cql.args.N.value | Incoming FlowFiles are expected to be parameterized CQL statements. The value of the parameters are specified as cql.args.1.value, cql.args.2.value, cql.args.3.value, and so on. The type of the cql.args.1.value parameter is specified by the cql.args.1.type attribute. |
Writes Attributes:
None specified.