[Reposted from Bob’s blog, The Undocumented API.]
Thank you to everyone who attend the BlueMetal Driving IoT Business Value events in Cambridge and New York. Below is a recap of the session. If you are interested in discussing an IoT business scenario with us, do not hesitate to reach out.
IoT is not new. The ability to connect devices to networks, gather telemetry and display that information to garner insight and take action has been around for some time. I have a fond memory of my parents insisting that I stay up late to watch Neil Armstrong become the first name to walk on the moon. I am sure it was this event that began my passion for engineering and my addiction to caffeine.
This was my first exposure to the concept of data being collected by sensors and sent across space and time to be collected and analyzed in near-real-time so that status could be visualized, insights gleaned and action taken in case of emergency. NASA’s Mission Control consisted of hundreds of people, each with their own collection of monitors providing data visualization of key metrics coming from the command module or an astronaut’s suit. That data was an immediate measure of mission status and safety. Truly amazing when you think about what that organization accomplished given the state of technology at the time.
THE TIPPING POINT
The one thing that NASA had that made them unique was a budget. A HUGE budget. Billions of dollars enabled NASA to put humans on the moon and in the process define IoT for the rest of us. I guess IoT really is rocket science.
It is not likely that you have a NASA sized budget but you are in luck. It is no longer necessary to break the bank to IoT enable your products and connect them to the cloud to gather telemetry, transform and store the data, gather insight and take action. Sensors and miniature computers are inexpensive and getting cheaper and more powerful all the time. The ability to develop the code to gather sensor readings, connect to a secure cloud endpoint and send messages has never been easier. Cloud platforms such as Microsoft Azure provide a set of managed services for telemetry ingestion, transformation, storage, analytics and data visualization that allow you to bring an end to end solution to market @ velocity and realize business impact immediately.
What is driving this thirst for IoT is that once you sensor enable your products, you will have access to more data than ever before. This data will tell you about the quality of your product, how they are used by your customers, calculate mean time to failure for its components and be able to provide immediate business value through the automation of scheduling preventive maintenance. Using Predictive and Prescriptive Analytics you can provide an enhanced customer experience, increase product quality and create a competitive advantage.
BIG DATA AND DATA VISUALIZATION
It is very easy to focus on the devices in our IoT scenarios as they usually represent the wow factor in the use case. What you learn very quickly with IoT is that once you have sensor enabled your devices, then it becomes all that about the data. Big Data. Really Big Data. It’s Big. Have I mentioned that it’s Big? There are approximately 2 billion PCs on the planet toady and about 10 billion mobile devices. By 2020 there will be over 250 billion connected devices driving Exabytes of data into the cloud.
We need to learn new skills and leverage new cloud capabilities in order to deal with this influx of massive amounts data. How are we going to be able to ingest, transform, store and analyze this data and even more importantly, how are going to query and visualize the data so that we can quickly draw insights and take action?
CAPABILITIES OF AN IOT SOLUTION
In order to realize the benefits an IoT solution, you will need a set of capabilities that define the process for how you get from device events to meaningful data to analytics and then on through to gathering insight and taking action.
- Device Connectivity and Management
- Devices will need a means of connecting to a network and send telemetry.
- You will need the ability to provision, register and provide firmware updates to the device.
- You need to select an operating system, network stack, sensors, what readings will be taken, what will be the types of messages that the device will construct and send along to the cloud and how often will those messages be sent.
- You will want the ability to send commands to your devices
- Telemetry Ingestion, Transformation and Storage
- Once the device is connected and communicating, you will need the ability to ingest the device events at scale. Consider the size or the message, the cadence of how often you send it, and how many devices are active. That math will provide you the level of scale you need for message ingestion.
- Once ingested you will need the ability to select subsets of events based on business rule criteria, transform the shape of the data and route to specific storage locations, each dedicated to a different downstream process.
- You will need to the ability to perform analytics on the data through both traditional means of descriptive and diagnostic reporting as well as introduce new techniques of predictive and prescriptive analytics that predict future state and recommend the action to be taken. This can be done through human interaction with the analytics systems or through analysis that can take action based on a set of business rules.
- Data Visualization, Real-Time Status, Alerts and Notifications
- You will want to provide a wallboard display or dashboard that updates automatically with the latest information without the need to interact with a UI or run a query providing data visualization and real-time status.
- You will want the ability to determine if there are any key KPIs that are out of range and depending on the nature of the data you may require a system or person to be alerted. Medical device scenarios are good examples of this need.
Now that we have identified the business capabilities, we can map them to the managed services available in Microsoft Azure.
AZURE IOT SUITE
The Azure IoT Suite provides a set of managed services for Device Management and Command and Control along with Azure Event Hub and Azure Stream Analytics for Telemetry Ingestion, Transformation and Routing to storage. Azure provides several storage options from Blobs and Tables to SQL Database, DocumentDb and Service Bus Queues. The IoT Suite also provides client libraries for various operating systems and is able to integrate with field gateways and protocol adapters that can collect the device messages and route them to Event Hub. To provide real-time alerting, Stream Analytics can identify alarm states and route those messages to Event Hub where a custom service can received those messages and route to other systems or leverage Azure Notification Hub for mobile push notifications.
AZURE CORTANA ANALYTICS
Azure Cortana Analytics Suite leverages the IoT Suite for connected device scenarios as well as Event Hub and Stream Analytics for other types of big data feeds that may arrive through storage or other file based integration techniques. Azure Data Factory is used to provide ETL and integration activities, getting that data into the right format for ingestion into the Analytics systems. In addition to the existing storage options that Azure provides, the Azure Data Lake is a new service that delivers an implementation of the Hadoop Distributed File System (HDFS), a highly scalable distributed store for any kind of data, structured or non-structured along with the ability to query across the lake and retrieve hybrid result sets.
Azure Cortana Analytics also provides you a set of choices for analytics engines giving you the tools necessary to provide all four types of analytics; descriptive, diagnostic, predictive and prescriptive. You can leverage Apache Spark, an open source suite of data analytics services, Azure HDInsight, an implementation of Apache Hadoop as a managed service, Azure Machine Learning Predictive Analytics and SQL Server Data Warehouse, an elastically scalable fully managed data warehouse service.
For Data Visualization, you have many choices. You can use Microsoft’s PowerBI connected directly to Azure Stream Analytics and create on-the-fly reports of real-time device data.
You can create Responsive Web Design dashboards that leverage SignalR and ReST API’s to read data from a storage location being populated by Stream Analytics and deliver that immediately to a client that updates dynamically with the data being delivered every few seconds.
Cortana Analytics Suite also provides the tools to integrate directly to the analytics systems in the cloud using Natural Language queries as text or voice with the results delivered through the Windows 10 Cortana Experience.
Given the low cost of sensors and miniature computers, you can IoT enable anything from household appliances to livestock. Once enabled, these connected devices will produce a treasure trove of data that can be ingested, data mined and visualized in order to provide insight into your business like never before.
If you are interested in getting started with your own IoT solution, please contact us here at BlueMetal. We will work with you using our BlueSky > BluePrint > BlueMetal approach to bringing modern software solutions to market @ velocity. -Bob