IoT, or the ‘Internet of Things’, is an intriguing and rapidly growing technology that’s bringing significant change to important elements of modern life. According to Gartner, IoT security spending alone is set to reach $1.5 billion during 2018.
Like many newly minted terms, the definition of IoT can vary depending upon who’s speaking. This blog post will cover two, related topics:
- What does IoT mean in everyday, practical terms (i.e., what are the real-world applications) and
- What role does cloud technology generally – and Microsoft Azure specifically – play in making IoT scalable and possible for a wider variety of organizations than ever before?
Let’s start with a definition.
The IEEE provides a very detailed definition here (“Towards a Definition of the Internet of Things”) which I encourage you to review if you want a particularly deep dive.
For simplicity’s sake, I’ll quote Wikipedia:
“The Internet of things (IoT) is the network of devices, vehicles, and home appliances that contain electronics, software, actuators, and connectivity which allows these things to connect, interact and exchange data.
IoT involves extending Internet connectivity beyond standard devices, such as desktops, laptops, smartphones and tablets, to any range of traditionally dumb or non-internet-enabled physical devices and everyday objects. Embedded with technology, these devices can communicate and interact over the Internet, and they can be remotely monitored and controlled.”
The key takeaway is that your PC is not an IoT device but an Internet-connected tracking unit that sends location and status data to a hub (for example) definitely is.
Here’s a real-life example.
Recently, I sent my watch back to the manufacturer for a battery replacement. As the watch neared the repair facility, I received routine location updates until it safely reached its destination. After a week or so, the process was reversed, I received location notifications as the watch made its way back to my home and an alert from my Internet-connected video doorbell that the delivery person was at the door.
In this scenario, there were several IoT devices in use:
- The real-time tracking device contained in the shipping unit for the trip to the vendor
- The real-time tracking device contained in the UPS truck that returned my watch
- The Internet-connected video doorbell that enabled me to answer the door and speak with the delivery driver while upstairs, nowhere near the front door
There are two technologies that were essential to making this seemingly magical process possible:
- The Internet (for network connectivity)
- A platform that can accept data sent from Internet-connected devices and provide analytics, status, device health checks, location and other types of information.
Let’s visualize this:
At the ‘cloud platform’ layer, Microsoft Azure can provide everything required to build an IoT solution without the need to invest in costly and fault-prone infrastructure that’s difficult to scale. If you’re just getting started with Microsoft Azure, it might first make sense to check out this Learning Path: Getting Started with Azure.
The Azure Approach to IoT
Azure offers two primary solutions for building IoT platforms:
- Azure IoT Central – a fully managed, SaaS platform that enables the creation of IoT solutions with built-in management and operational tools (IoT Central automatically integrates with Azure IoT Hub and Time Series Insights)
- Azure IoT Hub – a managed connectivity service that gives you the ability to create a network of your IoT devices (IoT Hub integrates with Azure Event Grid, Azure Logic Apps, Azure Machine Learning, and Azure Stream Analytics)
Let’s take a look at an example architecture using some of these tools:
In the diagram shown above, an IoT solution built using Azure IoT Central includes IoT Hub as the interface point for the connected ‘things.’ Stream Analytics acts as the real-time analysis ingestion engine and data source for services such as databases, dashboards, and reports.
It’s important to note that this is only one of many possible configurations. Azure’s IoT toolkit offers a great deal of flexibility, giving you the ability to create PaaS and SaaS IoT solutions that are either turnkey using IoT Central or highly customized, built using IoT Hub. You can explore sample reference architectures by reading the Microsoft Azure IoT Reference Architecture Guide. Another good resource is Getting Started with IoT with AWS and Microsoft Azure.
Azure IoT Central vs. IoT Hub: When to Use What
I think of IoT Central SaaS as a fully furnished, move-in ready house that includes everything you need from the start (accelerating adoption) while IoT Hub PaaS provides the glue for a solution you build using your preferred tools.
Microsoft describes IoT Central this way:
“…fully managed SaaS (software-as-a-service) solution that makes it easy to connect, monitor and manage your IoT assets at scale. Azure IoT Central simplifies the initial setup of your IoT solution and reduces the management burden, operational costs, and overhead of a typical IoT project.”
Full version at https://docs.microsoft.com/en-us/azure/iot-central/
Organizations that are completely new to IoT (or whose requirements fall into standard categories) can quickly create a fully featured solution using Azure IoT Central.
In this Microsoft Developer video, IoT Central’s ease of use is illustrated:
If your needs are more specific or if you are porting an existing IoT solution to Azure, IoT Hub may fit your needs. Here’s how Microsoft describes it:
“IoT Hub is a managed service, hosted in the cloud, that acts as a central message hub for bi-directional communication between your IoT application and the devices it manages. You can use Azure IoT Hub to build IoT solutions with reliable and secure communications between millions of IoT devices and a cloud-hosted solution backend. You can connect virtually any device to IoT Hub.”
Full version at https://docs.microsoft.com/en-us/azure/iot-hub/about-iot-hub
Organizations that have experience building IoT applications or whose needs aren’t met by IoT Central’s catalog of pre-created options can use IoT Hub as the communication point for the ‘things’ their app interfaces with. In other words, you build your app and use IoT Hub to connect the devices your app controls (one option for building your solution is the Azure IoT SDK). There’s greater flexibility and there’s also a greater need to manage some elements of the solution.
In this Azure Friday video, IoT Hub’s features and capabilities are illustrated:
Azure IoT Solution Accelerators
Microsoft provides a very helpful collection of scenario walkthroughs designed to show the capabilities of Azure IoT solutions and get you acquainted with IoT technology generally:
- Cloud-based remote monitoring
- Cloud-based predictive maintenance
- Cloud-based connected factory
- Cloud-based device simulation
In addition to those quickstarts, Microsoft also provides a series of tutorials that walk you through IoT solution scenarios in which you monitor, detect issues with, configure and manage, analyze errors and fix issues with devices.
Azure IoT is a powerful platform which enables organizations of all sizes to deploy, manage and scale IoT solutions. Using Azure, you can take full advantage of cloud-native techniques to build a robust IoT application. To learn more, you can explore Microsoft’s Azure IoT fundamentals page and Cloud Academy’s Internet of Things with Azure learning path.
Good luck with your IoT journey!
Running Apache Spark on Azure Databricks
In this article, we’ll cover how to set up an Azure Databricks cluster and how to run queries in an interactive notebook. However, this article only scratches the surface of what you can do with Azure Databricks. If you would like to learn more, including how to create graphs, run sched...
Understanding the Core Azure Architectural Components
Microsoft Azure relies on a few key architectural components to provide redundancy and high availability. Core Azure architectural components include Azure regions, Azure Availability Zones, resource groups, and the Azure Resource Manager. In this article, we’ll discuss the basics ab...
How to Become a Microsoft Certified Azure Administrator
Microsoft Azure is one of the hottest cloud services on the planet, and it’s growing at a phenomenal rate. This rapid growth has created a huge demand for people who know how to administer and manage Azure implementations. To make it easier for employers to verify the skills of Azure...
Preparing for the Microsoft AZ-900 Exam
Microsoft has offered Azure certification exams for years, but until recently, they were all meant for technical IT professionals. Now non-technical professionals, such as salespeople and managers, can take the new AZ-900 exam to prove their understanding of Azure fundamentals. People w...
An Overview of Azure Storage (Part 2)
Archive Storage Archive Storage offers the lowest storage costs of all Azure storage. Its retrieval costs, however, are higher when compared to Hot and Cool storage. The archive tier of storage is designed for data that can tolerate several hours of latency when being retrieved. It’s a...
An Overview of Azure Storage (Part 1)
Welcome to part one of our series on Azure Storage. Stay tuned for the second part. An Overview of Azure Storage Microsoft Azure Storage is a cloud-based storage offering that provides multiple storage solutions for organizations. In addition to a massively scalable object store for ...
NEW: Custom Hands-On Labs for Azure and Google Cloud Platform
Harvard Business Review recently estimated that some 90% of corporate training never gets applied on the job. Given the $200B training industry, that is a staggering amount of waste. One reason for the disconnect? Lack of context. Cloud Academy’s platform was built to make it extraor...
How to Become a Microsoft Certified Azure Solutions Architect
Microsoft Azure is the fastest growing cloud provider. Azure’s revenue grew an incredible 76% in the last quarter of 2018. As more and more businesses move their IT infrastructure to Microsoft’s cloud platform, the demand for Azure professionals keeps rising. Since there are relatively ...
What is Heroku? Getting Started with PaaS Development
So just what is Heroku? It's a service for developers eager to get their applications online without having to worry about infrastructure details. Metered, pay-as-you-go Cloud Computing services come in all kinds of flavors. Infrastructure as a Service (IaaS) offerings like AWS allow e...
Understanding Object Storage and Block Storage Use Cases
Cloud Computing, like any computing, is a combination of CPU, memory, networking, and storage. Infrastructure as a Service (IaaS) platforms allow you to store your data in either Block Storage or Object Storage formats. Understanding the differences between these two formats - and how ...
What are Azure Blueprints?
What are Azure Blueprints? Blueprints, in the traditional sense, are used by architects and engineers to design and build new things. They are used to ensure that the final products are built to specifications and in compliance with certain standards and requirements. Azure Bluepri...
Azure Hybrid Identity Authentication Methods
The move to the cloud is picking up steam. As such, many corporations are beginning to find themselves supporting a mixture of on-prem apps as well as cloud apps. Users are finding that they need access to this mix of applications as well. As one would expect, this can become a challe...