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,Connect
 TheDots.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 | 
| 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
 
  | 
IoT Foundation | 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 | AnalyticsRuntime | 
| 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, PowerBI | Embeddable Reporting, IBM Push Notifications | AWS Lambda,Amazon Quick
 Sight, Amazon Simple Notification Service  | 
Custom, Zeppelin (Dashboards), etc. | Mobile SDK,Dash
 board Seed  | 



