This article is part of IoT Architecture Series – https://navveenbalani.dev/index.php/articles/internet-of-things-architecture-components-and-stack-view/
The following table summaries the various capabilities offered by the IoT cloud providers. We had gone through the platform capabilities in this article series.
Platforms | Microsoft | IBM | Amazon | Open Source | GE Predix | Google Cloud |
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 | MQTT Client |
Protocol Supported | HTTP, AMQP MQTT | MQTT, HTTP | MQTT, HTTP | MQTT, AMQP, HTTP etc. | MQTT, HTTP | MQTT, HTTP |
Core platform – IoT Messaging platform | IoT Hub, Event Hubs, Azure IoT Central, Azure Digital Twins | Watson IoT Platform, IBM Maximo (Asset Management) | AWS IoT | Protocol Bridge, Apache Kafka | Rabbit MQ | Cloud IoT Core, Cloud Pub/Sub |
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 | Time Series, Cloud Bigtable |
Analytics platform – Real-time Streaming | Time Series Insights, Microsoft Stream Analytics | IBM Analytics Engine, IBM Streaming Analytics | AWS Glue, Amazon Kinesis | Apache Spark Streaming | Analytics Runtime | Cloud Pub/Sub, Cloud Dataflow, BigQuery |
Analytics platform – Machine Learning | Azure ML | Watson Studio, SPP Modeler (offline) | Amazon Machine Learning, AWS SageMaker, AWS IoT Analytics, Amazon Lookout for Equipment | Apache Spark MLlib (and other options) | Custom ML Support (Python, Java, MATLAB) + Pre-built industrial analytics and Data science services | Google AI platform, Vertex AI |
Alerts and Event handling | Notification Hubs, PowerBI | Embeddable Reporting, IBM Push Notifications | AWS IoT Events, AWS Lambda, Amazon Quick Sight, Amazon Simple Notification Service | Custom, Zeppelin (Dashboards), etc. | Mobile SDK, Dash board Seed | Google Data Studio, Firebase Cloud Messaging |
Edge Computing | Azure IoT Edge | IBM Edge Application Manager | AWS IoT Greengrass | Custom | Predix Edge | Edge TPU, Anthos |
As mentioned in earlier articles, there are various other complementary services offered by IBM, Amazon, Microsoft and Predix that could be leveraged and used in an IoT solution, like caching, geospatial locations, mobile push events, etc. There might be many more components, which could be used in the above stack, but we listed only those services that provide end-to-end integration in the IoT stack.
From the strategy perspective, all platform providers have the same strategy of providing a set of services to enable development of scalable IoT applications. Clearly, just providing the platform would not provide any unique capability and we would see a lot of tie-ups and partnership from device manufacturers to network providers, open source adopters to start-up’s providing innovative solutions. Apart from partnerships, the real requirement is to develop and provide end-to-end industry solutions on top of the IoT stack as a set of offerings which can be customized based on requirements. For instance, design model of the services used with a connected car solution should not change across car manufacturer. The only thing that would change is device library that is fitted in the car (telematics device) or installed via the OBD port.
With this we conclude our IoT series.