We are writing this blog as a multi-part series, and this will be the first part of the series.
The majority of IoT Projects would need the following 3 major components
1. Sensors
2. Communication Devices
3. IoT Platform
This blog addresses the section related to the third part, the IoT Platform.
An IoT Platform consists of multiple parts, the high-level components are
Message Queues
Data Listeners.
Data Storage.
Data visualization.
Device and Gateway Management.
Notification and Alerts.
For the sake of this blog, we will concentrate on breaking down these components of an IoT Platform.
Message Queues
In Simple terms a message queue is the order in which the messages were received by the IoT Platform, this could be as simple as an in-memory queue or a full-fledged queuing system like Rabbit MQ or a Queue Bus.
Some of the more complex use-cases in an IoT Platform might need for high throughput queues and real time analytics such as having Kafka in place.
Data Listeners
When any message is in a queue, we would always need ways to de-queue the messages and take them for further processing and ingestion in the systems.
Data listeners can be simple back-end applications that can be triggered by an event of message entering the queue or, it can also be serverless applications which check the queue every so often and act on the message appropriately.
Some of the smart data listeners today can listen to topics in real time and also perform analytics or other complex functions including Data Massaging and triggering alerts.
Data Storage.
In today's world Data is Money, so it becomes critical for all applications to store the data in the most optimal way.
It is critical to note that IoT Devices are notorious for generating huge amounts of data, and hence having the right strategy for storage is very crucial in nature.
Some of the common storage strategies include
Optimized for write, optimized for read, data processing and consolidation for reporting etc.
Data visualization.
Data once stored in the appropriate storage medium and with the right storage policies would also need to be turned into meaningful information for the users based on their personas.
IoT applications today offer a huge range of visualization options, and also a lot of APIs for fetching the data, so that more complex data visualizations can be done outside the applications.
Some of the commonly used applications for visualizations are PowerBI and Tableau
Device and Gateway Management.
One of the key elements of an IoT platform is the ability to quickly onboard and also manage the devices under its purview.
Each device is unique in terms of the data that produces, along with a meta-data which it might not, for example, the location of a sensor, or the battery level.
These data points are highly crucial to run scalable IoT Platforms and be in full control of the end-to-end part of the IoT Solution.
Notification and Alerts.
In this digital age, we are all accustomed to information overload, and we prefer to get our updates in small chunks, however when it comes to the applications, we are monitoring, we all love to know when things go bad instantly.
Notifications and alerts systems in IoT Platforms are designed to instantly notify the users when the system detects an anomaly or if something is reporting a value which, ideally it should not be reporting
Next part of the blog awaited.
Comments