Analytics Builder and Cumulocity IoT
Cumulocity IoT is a platform for connecting, monitoring and controlling remote devices. For an overview, see the
Concepts guide at
https://www.cumulocity.com/guides/.
Devices and sensors can be connected to Cumulocity IoT. See the information on interfacing devices in the Concepts guide and the information on device integration using MQTT in the Device SDK guide, both available at the above URL.
Sensors result in Measurement or Event objects in Cumulocity IoT, and devices can receive Operation objects created within the Cumulocity IoT platform. All of these objects (Measurement, Event, Operation) will be associated with a single device in the Cumulocity IoT platform. A device may have multiple types of measurement associated with it, and the types of measurements each device supports may be the same as other devices or different to other devices. Once devices are connected to Cumulocity IoT, information about these devices is stored in the Cumulocity IoT inventory. These are visible in the Device Management application, which can also be used to view Measurement, Event or Operation objects associated with that device. See the information on device management in the User guide, available at the above URL.
The Cumulocity IoT platform includes an Apama correlator component, which is managed by the Cumulocity IoT platform (this is not manually started or stopped) and is preconfigured to communicate to Cumulocity IoT. This correlator hosts the Analytics Builder runtime, and also executes any custom Apama rules added using EPL apps. For more information, see the Streaming Analytics guide, available at the above URL.
Analytics Builder allows you to create models that interact with the devices and sensor measurements. Models can receive
Measurement and
Event objects from devices, which provide the inputs to calculations or pattern detection performed within a model. Models can create new
Measurement objects which can represent derived values from sensors (for example, an average temperature) or the measurements can be used as an input to other analytic models (see
Connections between models). Models can create new
Operation objects which are sent to devices to control the devices (for example, to sound an alarm bell, display a message on a screen, or switch a device off). The models are also stored in the
Cumulocity IoT inventory, but can be imported or exported via the model manager.
Business logic can also be written in Apama’s Event Processing Language (Apama EPL) which gives more power and flexibility in a text-based programming language. This is an alternative if more complex logic is required or the logic does not fit into the pattern of an analytic model. EPL apps can be written directly in
Cumulocity IoT using the Streaming Analytics application. See the
Streaming Analytics guide at
https://www.cumulocity.com/guides/ for more information, including examples. Alternatively, it is also possible to build custom blocks if none of the blocks delivered with
Analytics Builder implement the logic required; see
Creating your own blocks.
Analytics Builder can be used with both
Cumulocity IoT Core (cloud) and
Cumulocity IoT Edge (local installation). You can customize several aspects of
Analytics Builder by setting various tenant options. See
Configuration for detailed information.