The Internet of Things describes a network of interconnected smart devices which are able to communicate with each other for a certain goal. But how easy is the process to realize which IoT platform is right for you?
IoT solution architecture
A typical IoT solution requires secure, bidirectional communication between devices, possibly numbering in the millions, and a solution backend that.
This diagram shows a typical IoT solution architecture and also describes the key elements in a generic IoT solution architecture. One of the biggest challenges facing IoT projects is how to reliably and securely connect devices to the solution backend.
Connectivity challenges of IoT Devices
- Are often embedded systems with no human operator.
- Can be in remote locations, where physical access is very expensive.
- May only be reachable through the solution back end.
- May have limited power and processing resources.
- May have intermittent, slow, or expensive network connectivity.
- May need to use proprietary, custom, or industry specific application protocols.
- Can be created using a large set of popular hardware and software platforms.
In addition to the requirements above, any IoT solution must also deliver scale, security, and reliability. The resulting set of connectivity requirements is hard and time-consuming to implement using traditional technologies such as web containers and messaging brokers.
Azure IoT Hub
IoT Hub is the new entry in the Microsoft Azure. This service enables bi-directional communication between devices and business engine in the cloud. The communication channel is reliable and secure and the authentication is per-device using credentials and access control. Azure IoT Hub is also a fully managed service that enables reliable and secure bi-directional communications between millions of IoT devices and a solution back end.
Azure IoT Hub:
- It provides reliable device-to-cloud and cloud-to-device messaging at scale.
- Enables secure communications using per-device security credentials and access control.
- It includes device libraries for the most popular languages and platforms.
How can Azure IoT Hub addresses the device connectivity challenges?
- Per-device authentication and secure connectivity : Can provision each device with its own security key to enable it to connect to IoT Hub. IoT Hub identity registry stores device identities and keys in a solution. A solution back end can whitelist and blacklist individual devices, enabling complete control over device access.
- IoT protocols and extensibility. If your solution cannot use the device libraries, IoT Hub exposes a public protocol that enables devices to natively use the HTTP 1.1 and AMQP 1.0 protocols. You can also extend IoT Hub to provide support for MQTT v3.1.1 with the Azure IoT Protocol Gateway open source component. You can run Azure IoT Protocol Gateway in the cloud or on-premises and extend it to support custom protocols.
- Scale. Azure IoT Hub scales to millions of simultaneously connected devices, and millions of events per seconds.
These benefits are generic to many communication patterns. IoT Hub currently enables you to implement the following specific communication patterns.
5. Event-based device-to-cloud ingestion. IoT Hub can reliably receive millions of events per second from your devices and process them on your hot path using an event processor engine, or store them on your cold path for analysis. IoT Hub retains the event data for up to 7 days to guarantee reliable processing and to absorb peaks in the load.
6. Reliable cloud-to-device messaging (or commands). The solution back end can use IoT Hub to send messages with an at-least-once delivery guarantee to individual devices. Each message has an individual time-to-live setting, and the back end can request both delivery and expiration receipts to ensure full visibility into the life cycle of a cloud-to-device message. This enables you to implement business logic that includes operations that run on devices.
You can also implement other common patterns, such as file upload and download, by taking advantage of IoT-specific features in IoT Hub, such as consistent device identity management, connectivity monitoring, and scale.
In IoT solution a gateway can be either a protocol gateway deployed in the cloud or a field gateway deployed locally with your devices. A protocol gateway performs protocol translation, for example MQTT to AMQP and a field gateway provides local management services for your devices.This can be a specialized device or software running on an existing piece of hardware. Both types of gateway act as an intermediary between your devices and your IoT Hub.
Working of Iot Hub
Azure IoT Hub implements the service assisted communication pattern to mediate the interactions between your devices and your solution back end. The goal of service assisted communication is to establish trustworthy, bi-directional communication paths between a control system such as IoT Hub and special-purpose devices deployed in untrusted physical space.
How Azure Pricing Works
Azure IoT Hub is offered in three editions: Free, S1 and S2.
|EDITION TYPE||PRICE (PER MONTH)||TOTAL NUMBER OF MESSAGES/DAY||MESSAGE METER SIZE|
Azure Stream Analytics
Azure Stream Analytics is a real-time stream processing engine in the cloud that helps uncover insights from devices, sensors, infrastructure, and applications. Developers describe their desired event stream processing and transformations in an SQL-like language, and the system abstracts the complexities of the parallelization, distributed computing, and error handling.
New capabilities include support for automatically refreshing reference data, improved job diagnostics, and the ability to create new Azure services for inputs and outputs within the context of your Stream Analytics job. These enhancements help you achieve a lower cost, real-time streaming processing solution in the cloud.
IBM also provides a set of tools to link IoT systems to its Bluemix platform, which offers services to hook into IT systems, services such as data storage, predictive modeling and geospatial analytics.
Bluemix provides the following features:
- A range of services that enable you to build and extend web and mobile apps fast.
- Processing power for you to deliver application changes continuously.
- Fit-for-purpose programming models and services.
- Manageability of services and apps.
- Optimized and elastic workloads.
- Continuous availability.
How Bluemix works
When you deploy an app to Bluemix, you must configure Bluemix with enough information to support the app.
- For a mobile app, Bluemix contains an artifact that represents the mobile app’s back end, such as the services that are used by the mobile app to communicate with a server.
- For a web app, you must ensure that information about the proper runtime and framework is communicated to Bluemix, so that it can set up the proper execution environment to run the app.
Each execution environment, including both mobile and web, is isolated from the execution environment of other apps. The execution environments are isolated even though these apps are on the same physical machine.
How Bluemix pricing works
Bluemix Streaming Analytics
There are two basic usage models for the Streaming Analytics Service:
- Use the Streaming Analytics interactively by accessing your stream instance in the cloud using the Streams web console.
- Use the Streaming Analytics service in the context of a Bluemix application, and control it programmatically using its REST API.
These two methods can be combined Your Bluemix service can use the service programmatically while you use the Streams web console to monitor the status of your Streams application.
Comparing the top IoT Platforms
Why Azure is considered as the winner compared to Bluemix ?
- Stream Analytics Engines: Stream analytics is a key component of real world IOT solutions and one that is really hard to implement.
- Business Platform Integration: Azure’s IOT platforms provide seamless integration with diverse SaaS systems relevant to IOT solutions.
- Developer Friendliness: Azure has large developer communities that have been building solutions using their PaaS solutions for years.With these communities Azure can embrace new IOT platforms.
- DevOps Tools: Microsoft provide great tools and interfaces for devops responsible for managing IOT solutions.
- Partnerships with Smart Device Manufactures: Azure already being leveraged by dozens of the most important smart device manufacturers in the world.
- Distribution Channels: Microsoft is being incredibly aggressive expanding the distribution channels of their IOT platforms through partner solutions or as part of the enterprise edition of their PaaS offerings.
Please write to firstname.lastname@example.org to know more about us.
Follow us on Linkedin