A rules engine transform will apply predefined rules to incoming data (realtime as well as batch). Rules must be generic enough to allow updates to a dataset, posting to an HTTP endpoint, sending an email, etc.
Use case(s)
CompanyA wants to develop a streaming pipeline to read and process signals from wearable and non-wearable devices, and apply rules on incoming signals. Based on the rules, it wants to send notifications to configured mobile devices to provide concierge and/or healthcare services.
CompanyA has a rules management system that can allow users to feed in rules for devices. Rules can state actions to be taken if certain conditions are met in the signals from the provided devices. These rules are stored in a CDAP dataset. A streaming pipeline will then read the rules dataset and apply rules applicable for incoming signals to trigger appropriate notifications.
User Storie(s)
As a Hydrator user, I would like to apply rules on the incoming stream to trigger notifications or take any other appropriate actions if necessary.
As a Hydrator user, I would like to be able to look up rules from a rules repository, and apply only those rules that are applicable to the incoming records.
Plugin Type
Batch Source
Batch Sink
Real-time Source
Real-time Sink
Action
Post-Run Action
Aggregate
Join
Spark Model
Spark Compute
Transform
Configurables
This section defines properties that are configurable for this plugin.
User Facing Name
Type
Description
Constraints
Rules Dataset
String
Name of the dataset that stores rules
Design / Implementation Tips
Tip #1
Tip #2
Design
Approach(s)
Properties
Security
Limitation(s)
Future Work
Some future work – HYDRATOR-99999
Another future work – HYDRATOR-99999
Test Case(s)
Test case #1
Test case #2
Sample Pipeline
Please attach one or more sample pipeline(s) and associated data.