Here is an end to end view of how to build connected products using an Enterprise IoT stack. The Enterprise IoT stack provides core set of capabilities, platform, services and architecture patterns to build end to end connected products.
The following table summarizes the offerings from commercial players and open source alternatives.
Comparison of IoT Platform Stack
The reference is part of my book – Enterprise IoT.
Platforms -> | Microsoft | IBM | Amazon | Open Source | Predix |
Device SDK | Azure IoT Device SDK
ConnectTheDots.io |
IBM Watson IoT Platform Client Library
Watson IoT Platform Device recipes
Paho Library |
Device SDK for AWS IoT | Paho Library, Cyclon.js, and many other options | Predix Machine |
Edge Gateway |
Azure IoT Gateway SDK | Edge Analytics SDK | AWS Greengrass | Eclipse Kura and many other options | Predix Machine |
Protocol Supported | HTTP
AMQP MQTT |
MQTT | MQTT
HTTP |
MQTT, AMQP,
HTTP etc. |
MQTT,
Web Socket, HTTPs |
Core platform – IoT Messaging platform | IoT Hub,
Event Hubs
|
IBM Watson IoT Platform | AWS IoT | Protocol Bridge,
Apache Kafka |
RabbitMQ |
Core platform – Database option | DocumentDB,
Storage (high-performance tables, blobs), Microsoft SQL
|
MongoDB, Cloudant NoSQL, ObjectStorage,
Informix Time Series data, etc. |
Amazon DynamoDB, Amazon Redshift | Cassandra (or alternatives like MongoDB) | Asset Data,
Time Series, Redis, Postgre SQL, Blobstore |
Analytics platform – Real-time Streaming | Microsoft Stream Analytics | IoT Real-Time Insights,
IBM Streaming Analytics |
Amazon Kinesis | Apache Spark Streaming | Analytics Runtime |
Analytics platform – Machine Learning | Azure ML | Predictive Analytics service (on Bluemix) + SPP Modeler (offline) | Amazon Machine Learning | Apache Spark MLlib | Custom Analytics Support (Python,
Java, MATLAB) |
Alerts and Event handling | Notification Hubs,
Power BI |
Embeddable Reporting, IBM Push Notifications | AWS Lambda,
Amazon Quick Sight, Amazon Simple Notification Service |
Custom, Zeppelin (Dashboards), etc. | Mobile SDK,
Dashboard Seed |
For more details on the how to realize the architecture with various use cases, kindly refer to my book – “Enterprise IoT”.