Skip to content

Latest commit

 

History

History
48 lines (36 loc) · 2.75 KB

README.md

File metadata and controls

48 lines (36 loc) · 2.75 KB

Ff2Cql

NiFi + Cassandra

A simple transfer data between NiFi and CQL (support Apache Cassandra, ScyllaDB, AstraDB, etc.). The implementation details:

  • development NiFi v2 processor (with controller) and java application (support Java 17/21+)
  • support Apache Cassandra v4/v5, ScyllaDB, AstraDB based on CQL (Cassandra Query Language)

1. The main motivation

  • the Apache NiFi v2 does not support Apache Cassandra v4/v5 (NiFi v2 removed the Cassandra processor due to security vulnerabilities and unmaintained code. The processor supported only Cassandra v3 not newer.)

2. Usage in NiFi

You can use this preferred way (NiFi v2 processor with controller):

  • PutCQL, put data to CQL solution, where inputs are FlowFiles
  • GetCQL, get data from CQL solution, where outputs are FlowFiles
  • NOTE: You can download the latest version, see 'nifi-cql-nar-*.nar' file

or two other older alternative ways:

  • ExecuteProcess with java application (see 'Ff2Cql-*.jar'), where inputs are CSV files
  • ExecuteStreamCommand with java application (see 'Ff2Cql-*.jar'), where inputs are FlowFiles via stdin

3. Connection setting

You can see sample of relevant setting for CQL controller here:

NOTE:

  • These connection settings are used directly in unit tests.

4. Apache NiFi v2 & Scylla/Cassandra v5

Apache NiFi v2 & Scylla/Cassandra v5