The cloud market is currently dominated by three platforms – Amazon Web Services, Microsoft Azure, and Google Cloud Platform – that control nearly 65% of the global market. But as the core cloud computing market matures, new technologies such as artificial intelligence, machine learning and IoT are opening up a new front in a renewed battle for dominance. These upsell technologies could well provide the strategic differentiator that will shake up the current rankings. It is cumbersome to evaluate and compare the capabilities of IoT platforms.
The value of the global IoT platforms market, comprising both cloud-based and on-premise software and services, is estimated at USD 6.11 billion by 2024. The market is currently growing at almost 29% CAGR and CSPs (Cloud Service Providers) have played a key role in lowering barriers to IoT adoption. By standardizing components that can be shared across vertical applications, CSPs are lowering costs, simplifying implementations and empowering customers to experiment with and quickly scale up new use cases.
CSP IoT offerings are still focused on delivering broad horizontal services with little potential for industry-specific optimizations. But that will change as the market matures and the need for more nuanced and sophisticated solutions opens up. In the meanwhile, let’s find out how the top three cloud platforms fare when it comes to IoT.
In order to make this a bit more objective, we will be looking at how these platforms perform in terms of three components that are critical for any IoT solution:
- Core IoT
- Edge Computing
- Data management & analytics
These categories are by no means perfectly mutually exclusive, and there can be a bit of overlap, but they do provide a more like-for-like basis for comparison in terms of fundamental IoT capabilities.
Core IoT
Amazon Web Services:
AWS IoT Core is a managed cloud service that allows for the easy and secure connection and interaction between devices and cloud applications. It supports billions of devices across multiple industry-standard and custom protocols. The service stores the latest state of every connected device, allowing applications to track, communicate and interact with devices even when they are disconnected. AWS IoT Core allows users to implement new device and application features by simply defining and updating business rules in real-time. The service supports a variety of communication protocols including HTTP, WebSockets, and MQTT.
Authentication and end-to-end encryption across connection points ensures that data is never exchanged between devices and AWS IoT Core without first establishing identity. Users can further secure access by applying policies with granular permissions.
With AWS IoT Core, users can easily connect to a range of other AWS services, like AWS Lambda, Amazon Kinesis, Amazon S3, Amazon SageMaker, Amazon DynamoDB, Amazon CloudWatch, AWS CloudTrail, Amazon QuickSight, and Amazon Elasticsearch Service, without having to manage any infrastructure.
Microsoft Azure:
Azure IoT offers two frameworks for building IoT solutions to address different sets of customer requirements.
Azure IoT Central is a fully managed SaaS solution that uses a model-based approach to help users without expertise in cloud-solution development build enterprise-grade IoT solutions. Then there are Azure IoT solution accelerators, a collection of enterprise-grade solution accelerators that can help speed up development of custom IoT solutions. Both these solutions use Azure IoT Hub, the core Azure PaaS.
The capabilities of Azure IoT Central can be categorized in terms of the four personas who interact with the application.
The Builder uses web-based tools to create a template for the devices that connect to the IoT application. These templates can define several operational variables such as device properties, behavior settings, business properties and telemetry data characteristics. Builders can also define custom rules and actions to manage the data from connected devices. Azure IoT Central even generates simulated data for builders to test their device templates.
The Device Developer then creates the code, using Microsoft’s open-source Azure IoT SDKs, that runs on the devices. These SDKs offer broad language, platform and protocol support to connect a range of devices to the Azure IoT Central application.
The Operator uses a customizable Azure IoT Central application UI for day-to-day management of the devices, including provisioning, monitoring and troubleshooting.
The Administrator is responsible for managing access to the application by defining user roles and permissions.
Google Cloud Platform:
Google’s Cloud IoT Core is a fully managed service for easily and securely connecting, managing, and ingesting data from millions of globally dispersed devices. There are two main components to the solution, a device manager and a protocol bridge.
The device manager enables the configuration and management of individual devices and can be used to establish the identity of a device, authenticate the device, and remotely control the device from the cloud. The protocol bridge provides connection endpoints with native support for industry standard protocols such as MQTT and HTTP to connect and manage all devices and gateways as a single global system.
Google has also launched a Cloud IoT provisioning service, currently in early access, that leverages tamper-resistant hardware-based security to simplify the process of device provisioning and on-boarding for customers and OEMs.
The Cloud IoT Core service runs on Google’s serverless infrastructure, which scales instantly and automatically in response to real-time changes.
Edge Computing
Amazon Web Services:
AWS provides two solutions for edge computing, Amazon FreeRTOS to program, deploy, secure, connect, and manage small, low-power edge devices and AWS IoT Greengrass for devices that can act locally on data while still using the cloud for management, analytics, and storage.
Amazon FreeRTOS is a popular open source operating system for microcontrollers that streamlines the task of connecting small, low-power devices to cloud services like AWS IoT Core or to more powerful edge devices running AWS IoT Greengrass or even to a mobile device via Bluetooth Low Energy. It comes with software libraries that makes it easy to configure network connectivity options, program device IoT capabilities and secure device and data connections.
With AWS IoT Greengrass, devices can be programmed to filter device data locally and transmit only the data required for cloud applications. This helps reduce cost while simultaneously increasing the quality of data transmitted to the cloud. AWS IoT Greengrass enables connected devices to run AWS Lambda functions, execute machine learning models and connect to third-party applications, on-premise software and AWS services using AWS IoT Greengrass Connectors. Device programming also becomes extremely easy as code can be developed and tested in the cloud and then be deployed seamlessly to the devices with AWS Lambda.
Microsoft Azure:
Azure IoT Edge is a fully managed service built on Azure IoT Hub that extends cloud workloads, including AI, analytics, third-party services and business logic, to edge devices via standard containers. For instance, users have the option of leveraging Project Brainwave, a deep learning platform from Microsoft for real-time AI serving in the cloud, to deliver real-time AI to the edge. Processing data locally and transmitting back only the data required for further analysis can reduce the cost and enhance the quality of data. The solution enables AI and analytics models to be built and trained in the cloud before they are deployed on-premise. All workloads can be remotely deployed and managed through Azure IoT Hub with zero-touch device provisioning.
As with AWS, Azure IoT Edge also offers device management capabilities even when they are offline or with intermittent connectivity. The solution automatically syncs the latest device states when they are reconnected to ensure seamless operability.
Google Cloud Platform:
Google’s IoT edge service strategy is centered around two components; Edge TPU, a new hardware chip, and Cloud IoT Edge, a software stack that extends Google Cloud AI capabilities to gateways and connected devices.
Edge TPU is a purpose-built ASIC chip designed and optimized to run TensorFlow Lite ML models at the edge and within a small footprint. Edge TPUs complement Google’s cloud IoT capabilities by allowing customers to build and train machine learning models in the cloud and then run the models on Cloud IoT Edge devices. The combination extends Google Cloud’s powerful data processing and machine learning capabilities to IoT gateways and end devices even while increasing operational reliability, enhancing device and data security and enabling faster real-time predictions for critical IoT operations.
The company is working with semiconductor manufacturers and device makers to embed its IoT edge innovations in the development of intelligent devices and gateways.
IoT Analytics
Amazon Web Services:
AWS IoT Analytics is a fully-managed service that automates every stage of the IoT data analytics process. The service can be configured to automatically filter data based on need, enrich data with device-specific metadata, run scheduled or ad hoc queries using the built-in query engine or perform more complex analytics or machine learning interference. Users can also schedule and execute their own custom analysis, packaged in a container, and the service will automate the execution.
AWS IoT Analytics stores device data in an IoT-optimized time-series data store and offers capabilities for time-series analysis. The company offers a fully managed, serverless, time series data service called Amazon Timestream that can process trillions of events at 1,000X speeds and at one-tenth the cost of conventional relational databases.
AWS also offers real-time IoT device monitoring either as an out-of-the-box feature of its Kinesis Data Analytics solution or as a reference implementation for building custom device monitoring solutions.
Microsoft Azure:
Azure Stream Analytics is a fully managed serverless PaaS offering designed to analyze and process streaming data from multiple sources simultaneously and in real-time. It integrates with Azure Event Hubs and Azure IoT Hub to ingest millions of events per second from a variety of sources. The service can be configured to trigger relevant actions and initiate appropriate workflows based on the patterns and relationships identified in the extracted information.
Azure Stream Analytics on Azure IoT Edge enables the deployment of near-real-time intelligence closer to IoT devices to complement big data analytics done in the cloud. A job can be created in Azure Stream Analytics and then deployed and managed using Azure IoT Hub.
The Microsoft IoT platform also offers Time Series Insights, a fully managed, end-to-end solution to ingest, store and query highly contextualized, IoT time series data. Time Series Insights seamlessly integrates with Azure IoT Hub to instantly ingest billions of events for analytics. Data and insights from this solution can be integrated into existing applications and workflows or new custom solutions can be created with the Time Series Insights Apache Parquet-based flexible storage system and REST APIs.
Google Cloud Platform:
Google Cloud IoT offers a range of services, at the edge and in the cloud, to extract real-time insights from a distributed network of IoT devices. The device data captured by Cloud IoT Core is aggregated into a single global system and published to Cloud Pub/Sub, part of Google Cloud’s stream analytics program, for downstream analytics. Cloud Pub/Sub ingests event streams and delivers them to Cloud Dataflow, a serverless fully managed data transformation and enrichment service, to ensure reliable, exactly-once, low-latency data transformation. The transformed data is then analyzed with BigQuery, a serverless cloud data warehouse with built-in in-memory BI Engine and machine learning.
Using Cloud IoT Edge, discussed earlier in this article, all these data processing, analytics and machine learning capabilities can then be extended to billions of edge devices.
Each of these platforms offer a vast range of IoT-specific tools, solutions and services and another layer of complex cloud services and third-party integrations that make it almost impossible to make an exhaustive comparison. But features such as device provisioning & management, real-time streaming analytics and edge computing are capabilities that are critical to every IoT implementation irrespective of application or vertical. Of course, there are other factors, like pricing and security that also come into play. But looking at a platform’s core IoT, edge computing and real-time analytics capabilities, affords a like-to-like comparison provides the context for a more detailed drill down.