Session 1 100PM200PM Lunch 2611 Best Practices for Creating IoT Solutions with Azure Kevin Miller Principal Program Manager Azure IoT Internet of Things Agenda State of the art for ID: 703634
Download Presentation The PPT/PDF document "Updated Agenda 12:00PM–1:00PM" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Updated
Agenda
12:00PM–1:00PM
| Session #1
1:00PM–2:00PM
|
LunchSlide2Slide3
2-611Best Practices for Creating
IoT Solutions with AzureKevin MillerPrincipal Program Manager, Azure IoTInternet of ThingsSlide4
Agenda
State of the art for
IoT
Architecture for building today
Patterns and anti-patterns
Demo
Architecture for the futureSlide5
Is IoT even a new thing?
Command and control scenarios have much in common with some parts of IoT.
But falling hardware costs, cloud services and relatively ubiquitous communications do enable new approaches
.
Depending on who you ask,
IoT
is either:
Nothing new
A unicorn
1
2
M
agic
, and will soon change everything.
W
e’ve
been doing this for 40
yearsSlide6
Most of the early successful IoT deployments were either…
For very complex and expensive devices, where the cost of a custom hardware/software solution is acceptable compared to the cost of the device, or…For high-volume, homogeneous devices, where the software needs are relatively simple..IoT solutions until now
Device complexitySlide7
Microsoft Azure IoT Services
Devices
Device Connectivity
Storage
Analytics
Presentation & Action
Event Hubs
SQL Database
Machine Learning
App
Service
Service Bus
Table/Blob Storage
Stream Analytics
Power BI
External Data Sources
DocumentDB
HDInsight
Notification Hubs
External Data Sources
Data Factory
Mobile Services
BizTalk Services
{ }Slide8
Build to an architecture that will scale, but start prototyping with a small number of devices.It’s hard to predict what data provides value -- which impacts which sensors and devices are necessary -- until you build something.It’s much easier to work through through device identity, management/update and security at small scale.
Pattern: Think big. Start smallThink big, but start small.Experiment, learn and refine.Slide9
IoT architecture requirements
Handle extreme hardware and software heterogeneity.Lower barriers to entry: evaluate -> prototype -> deploy.Provide hot-path and cold-path analysis and response.Build for hyper-scale and enable low latency.Be secure by design; support defense in depth.Slide10
It is very hard to predict in advance what data will be useful.It is tempting, but likely inefficient to try for business transformation in the first step
.Think about not only device telemetry but also diagnostic telemetry.Privacy and security implications of telemetry are generally lesser than for command and control.Pattern: Telemetry firstStart with telemetry.
The important data may not be what you expected.Address privacy, security and manageability before moving to command and control.Slide11
High scale data ingestion via Event Hub.High scale stream processing via Stream Analytics (or HDInsight /Storm)
Storage for cold-path analyticsProcessing for hot-path analyticsTelemetry today
Event
Hub
Stream
Analytics
SQL
BlobSlide12
Real-time analytics for Internet of Things solutions
Stream millions of events per secondMission critical reliability, performance and predictable resultsRapid development with familiar SQL-based languageEvent Hubs and Stream Analytics
Cloud-scale telemetry ingestion from websites, apps, and devices
Compatible with more than a million publishers supporting HTTP, AMQP and MQTT
Ingress millions
of events per second
SAS based security, with unique token per publisher
Configurable data retention (1-30 days)
Low latency (<10
ms
for volatile data)
Pluggable with other cloud services like Stream Analytics
Event
Hub
Stream
AnalyticsSlide13
Demo Event Hub and Stream Analytics
Event Hub
Stream Analytics
Website
Worker (Node.js)
SQL
Blob
Event
Hub
Stream
Analytics
SQL
Blob
Website
Worker (Node.js
)Slide14
var eventBody = { "reading": x, "device_id": id
};ehClient = new EventHubClient({ 'name': "kevinmil-demo", 'namespace': "kevinmil-demo-ns", 'sasKey':
<snipped>, 'sasKeyName': "sendTelemetry", 'timeOut': 10, }); var msg = new EventData(eventBody); ehClient.sendMessage(msg, function (messagingResult) { // <body snipped>});
JavaScript (to Event Hub)Slide15
SELECT device_id as Device_Id, reading as Reading,
EventProcessedUtcTime as UTCDateTimeFROM [eventhub]INTO [out2blob]Stream Analytics (to blob)Slide16
SELECT System.TimeStamp as
UTCDateTime, device_id as Device_Id, COUNT (*) as CountFROM [iotdemoeventhub] TIMESTAMP BY EventProcessedUtcTimeINTO [
alertCounts]WHERE ( CAST(reading AS float) > 115.0 )GROUP BY device_id, SlidingWindow(second, 15)HAVING COUNT(*) > 1SELECT device_id as Device_Id, reading as Reading,
EventProcessedUtcTime
as
UTCDateTime
FROM [
iotdemoeventhub
] TIMESTAMP BY
EventProcessedUtcTimeINTO [stream2sql]Stream Analytics (to SQL)Slide17
Think about a scalable architecture, but start small, and start with telemetry. It is straightforward to get a telemetry example running with very limited coding.
Demo recapSlide18
In the telemetry example, Event Hub data flows directly into Stream Analytics.
Pattern: Don’t interrupt the fast pathDon’t accidentally create processing bottlenecks. (Think carefully before interrupting data flow between high-scale components.)“Don’t stick your head in the fire hose unless you know what you’re doing.”
Both components are designed for high scale.
Don’t process between high-scale components unless you can handle that scale.
Event
Hub
Stream
AnalyticsSlide19
The entire organization needs to be focused on security, and that focus must inform the entire product lifecycle.
Pattern: Defense in depthThink about security, identity and management from the very beginning.Security is a shared responsi-bility between Azure and the customer.
Requirements
Design & Implementation
Verification & Release
Response
Think about security on the device, at the field gateway (if one exists) and in the cloud.
Physical Security, Tamper Detection
Hardware & firmware security,
s
ecure boot
Network, protocol & application security
Identity management for devices and users
Data Privacy Protection and Controls Slide20
Accelerate
time-to-value by easily deploying IoT applications for the most common use cases, such as remote monitoring, asset management, and predictive maintenance
Plan and budget appropriately through a simple predictable business modelGrow and extend solutions to support millions of assets
Azure IoT SuiteSlide21
Azure IoT Reference Architecture
Solution Portal
Provisioning API
Identity & Registry Stores
Stream Event Processor
Analytics/ Machine Learning
Data Visualization & Presentation
Device State Store
Gateway
Storage
IP capable devices
Existing IoT devices
Low power devices
Presentation
Device and Event Processing
Data Transport
Devices and Data Sources
Cloud Gate-way
Agent
Libs
Agent
Libs
Control System Worker Role
Agent
LibsSlide22
The forthcoming IoT Suite will ease the design and deployment of
IoT applications for the most common use cases.Highly portable client libraries support easy cloud connection for devices and gateways.IoT Hub will extend Event Hubs to include device provisioning, identity, command & control, and management.Building to the reference architecture will simplify conversion to the IoT Suite.
Pattern: Build to the reference architectureGet started now and convert easily when the IoT Suite is publically available.Slide23
Demo 2 Adding a native client and PowerBI
PowerBI
Client Library
Event
Hub
Stream
Analytics
SQL
Blob
Website
Worker (Node.js
)Slide24
Think
big (architecture), but start small (experiment, learn and refine
).Start with telemetry. Address privacy, security and manageability before moving to command and control.Don’t interrupt the fast path and create processing bottlenecks. Think about security, identity and management from the very beginning, and through the life of the product.Build to the reference architecture to ease the move to IoT Suite.Summary
CONSUMERS
DEVICES
OBJECTS
NETWORK
BIG DATA
INNOVATION
STANDARDS
BUSINESS
SECURITY
Internet
of ThingsSlide25
Internet of Things Overview
:
By Sam George and Steve T @ 5:00PM, 04/29, Room Hall 1A2. Azure IoT security: By Clemens Vasters @ 2:00PM, 04/29, Room 3014
On demand sessions:
1. Designing and sizing a global scale telemetry platform on Azure Event Hubs
2. Connecting your devices to Azure IoT suite
Attend IoT sessions at Build
Reference talks by Sam, Elio, Clemens and any of the ASA talks, at least.Slide26