Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The concrete implementation comprises a DataLake ata Lake class, a DataLake Data Lake Controller class, a DataLake InfluxDBClient Data Lake InfluxDB Client class and a DataLake Data Lake Parameters class. The code is basically the same as for the InfluxDB sink (org.apache.streampipes.sinks.databases.jvm.influxdb).

DataLake Data Lake Parameters Class

The parameter class defines the necessary parameters for the configuration of the sink.

...

parameterdescription

influxDbHost

hostname/URL of the InfluxDB instance. (including http(s)://)
influxDbPortport of the InfluxDB instance
databaseNamename of the database where events will be stored
measureNamename of the Measurement where events will be stored (will be created if it does not exist)
userusername for the InfluxDB server
passwordpassword for the InfluxDB server
timestampFieldfield which contains the required timestamp (field type = http://schema.org/DateTime)
batchSizeindicates how many events are written into a buffer, before they are written to the database
flushDurationmaximum waiting time for the buffer to fill the Buffer size before it will be written to the database in ms
dimensionPropertieslist containing the tag fields (scope = dimension property)

DataLake Data Lake Controller Class

In controller class, the model is declared for viewing and configuration in Pipeline Editor, and initializes sink on invocation of pipeline.

The measurement name and the timestamp field are derived from user input, the remaining parameters (except batch size and flush duration) from org.apache.streampipes.sinks.internal.jvm.config.SinksInternalJvmConfig. Batch size is fixed to 2000 events and flush duration is set to 500 ms.

DataLake Data Lake Class

The data lake class itself comprises a total of six methods and essentially controls the saving of events to the database. For this purpose, it uses the data lake Data Lake InfluxDB clientClient.




References: