AWS vs Azure vs Google Cloud Platform Internet of Things

The IoT requires a platform that can provide bi-directional devices communication, securely handle huge volumes data, and provide meaningful insights in realtime.

AWS IoTis a fully managed platform for building complete IoT solutions on AWS. Devices communicate with applications running in the cloud over HTTP, MQTT and WebSockets which is secured using TLS. Device specific SDKs are available for Embedded C, JavaScript, Python, iOS, Android and Arduino Yn. AWS IoT supports cloud-to-device and device-to-cloud reliable messaging scenarios, even when the device is not connected.Pricingis relatively straight forward with a fee per 1 million messages sent or received (a free low throughput tier is also available). Messages are processed in 512 byte blocks with each block representing a single message up to a maximum 128 KB.

Microsoft is clearly being careful to ensure that Azure IoT can be used with any type of device. With the announcement ofWindows 10 IoT core, a slimmed down version of Windows 10 designed specifically to run on IoT devices Microsoft are also positioning themselves as a whole solution IoT provider.

All Bootcamped Out: the 5-day workshop survival guide

the cloud offering is a managed service that can be consumed by existing solutions with minimal architectural change

IoT Hubis Azures managed IoT solution for bi-directional device to cloud communications. IoT Hub supports AMQP, MQTT, and HTTP. If the device does not support one of these protocols then its possible to adapt both incoming and outgoing traffic using AzureIoT Protocol Gateway. A set of deviceSDKsfor , JavaScript, Java, C and Python are available. IoT Hub provides a device registry that maintains a list of devices and provides access to a device specific queue to reliably communicate with a specific device. Data received can be sent to Blob Storage for archive or offline processing, or sent to an Event Hub endpoint for immediate processing. There is also good support forIoT monitoring and diagnostics. IoT Hub comes in4 tiers, ranging from a free tier up to the high throughput S3 tier which can support up to 300,000,000 messages per day. Additional units can be added to each tier for more throughput if required. Messages are sent in 4 KB blocks, each block is counted as a message for billing purposes up to a maximum 512 KB. There are somethrottling rulesto consider when determining the best tier for your needs since.

the cloud service can support running legacy systems with minimal change

Jess has over 18 years experience helping companies succeed through the smart use of technology. He has spent most of his career working for leading Microsoft partners across the UK and Australia and is now Principal at endjin, working with clients to envision and execute disciplined innovation programmes.You can follow Jess on twitter.

Next up we will be looking atMobile Services.

In this series, were comparing cloud services from AWS, Azure and Google Cloud Platform. A full breakdown and comparison of cloud providers and their services are available in thishandy poster.

Firebaseis Googles self contained mobile and IoT development platform. Firebase supports device-to-cloud and cloud-to-device messaging over HTTP and XMPP and comes with SDKs for iOS, C++, JavaScript and of course Android. It comes with its own cloud hosted NoSQL database that will automatically synchronise device state including photos, videos and images. There are also rich built-in operational logging and monitoring support.

AWS IoT comes with a declarativerules enginethat is used to transform and route IoT traffic to a specific location or endpoint such as anS3bucket orLambdafunction. It is also possible to direct data toKinesis Streamswhich can run realtime analytics via applications written using theKenisis Client Library. AWS has also recently announcedKinesis Analyticswhich can be used to perform stream analytics using an SQL-like language.

Its interesting to see how each provider is tackling the IoT problem space. All three can ingest and process device telemetry at scale and consume cloud services where additional processing is required. They also provide device management, monitoring and reliable two way messaging. AWS and Azure have a more coherent message with their products clearly integrated into their respective platforms, whereas Google Firebase feels like a distinctly separate product. Working out the best platform for price is never straight forward and you should be wary of comparing headline figures alone since the definition of a message for billing purposes varies between platforms. Also be sure to factor in the restrictions and limitations that come with each platform.

Choosing the right cloud platform provider can be a daunting task. Take the big three,AWSAzure, andGoogle Cloud Platform; each offer a huge number of products and services, but understanding how they enableyour specificneeds is not easy. Since most organisations plan to migrate existing applications it is important to understand how these systems will operate in the cloud. Through our work helping customers move to the cloud we have compared all three providers offerings in relation to three typical migration scenarios:

Choosing the right strategy will depend on the nature of the applications being migrated, the business landscape and internal constraints.

This entry was posted inAnalyticsCloudInternet of ThingsStrategyand tagged

As messages arrive, Dataflow can be used to process the incoming stream such as moving data to storage and performing realtimestream analysis. Data may also be streamed toBig Query, Googles data warehousing solution via theBig Query Streaming API. It is also easy to execute custom logic over individual messages as they arrive viaGoogle Cloud Functions.

We have grouped all services into 9 categories:

It is also possible to stream data toApache Storma popular open source streaming analytics platform. Azure is the only provider of the three to offer Apache Storm as a fully managed service.

Event Hubsis another option for device-to-cloud scenarios and may be a better solution for basic large scale device telemetry ingestion. Event Hubs can ingest large volumes of messages over AMQP and HTTP. Event Hubs performance is measured in throughput units (TU) where each TU allows 1 MB/S ingress up to 20 TUs, although this can be raised via a support ticket.Pricingis based on the number of ingress events (per million) plus a fee for each throughput unit per hour.

Firebase was acquired by Google in 2014 and is offered as a standalone product but it also integrates nicely with Google cloud services and combined billing is available.The serviceis available in a free tier, a predictable monthly priced option, or a pay-as-you-go option (price varies according to the storage and services used).

In this post we are looking at

the cloud technology is typically used in solution architectures that have been optimised for cloud

Each device that connects with AWS as a represented as aDevice Shadow. A device shadow maintains an identity and last known state of a specific device and provides a channel to send and receive messages. When a message is posted to a device AWS will ensure the message is delivered, if the device is offline it will be delivered once the device reconnects.

Event Hubs is often used withAzure Stream Analyticsfor real-time analysis of device data. It uses a SQL-like language to perform queries over an incoming data stream and can enrich data by integrating other Azure services such asAzure Machine LearningandAzure functions. Stream Analytics can output to most Azure data storage solutions or directly toPower BIfor visualisations, Event Hubs, or even to another Stream Analytics stream.

Google Cloud Platform supports device-to-cloud IoT scenarios throughCloud Pub/Sub. Cloud Pub/Sub supports large scale message ingestion over HTTP (REST) orgRPC, a compact messaging format that usesProtocol Buffers. Client libraries exist for Go, Java (Android), .NET, JavaScript, Objective-C (iOS), PHP, Python and Ruby.Pricingis tiered based on the number of operations plus storage costs (these are typically minimal assuming no failed deliveries) plus network costs if consumer is located in a different region. Bear in mind that processing a typical message will involve 3 operations, 1 publish, 1 pull and 1 acknowledgement. Messages are split into 64 kB units that are each considered a message for billing purposes.

For information about republishing or referencing material on this site, please email

Like Microsoft, Google have their own Android based IoT operating system known asBrillo. Brillo comes with built-in support forWeave, a new communication platform designed specifically to allow IoT devices and controllers to interact. Since most IoT devices are controlled by a phone, tablet or similar device, Weave provides a standard approach that enables discovery and interoperability across phone, IoT devices and cloud. Google are hoping that Weave becomes the standard for all IoT communications that ultimately results in smarter IoT solutions.

My internship at endjin New Proposition Development, Programming, and a very long list of acronyms

Azure Weeklyis a summary of the weeks top news in the Microsoft Azure ecosystem aimed at developers, architects, IT Managers, infrastructure folk, or anyone trying to keep on top of the latest Azure developments

Leave a Reply