microsoft azure and iot – how to use
TRANSCRIPT
Azure is Big and fast growing … C
lien
t la
yer
(on
-pre
mis
es)
Tablet Phone
Games
consolePC
On-premises
databaseBrowserOffice Add-in
On-premises
service
AD
Multifactor
Authentication
Access
Co
ntr
ol
Layer
Inte
gra
tio
n
layer
Service Bus CDN
BizTalk
Services
Traffic
Manager
Virtual
NetworksExpress
Route
Ap
pli
cati
on
layer
API Mgmt Websites
Cloud
Services VM
Mobile
Services
Media
Services
Notification
Hubs Scheduler Automation
Data
Layer
Storage Blobs Tables Queues Data
Machine
Learning HD Insight
Backup and
RecoverySQL
Database Caching StorSimple
Devices Device Connectivity Storage Analytics Presentation & Action
Event Hubs SQL DatabaseMachine
LearningApp Service
Service BusTable/Blob
Storage
Stream
AnalyticsPower BI
External Data
SourcesDocumentDB HDInsight
Notification
Hubs
External Data
SourcesData Factory Mobile Services
BizTalk Services
{ }
Intake millions of events per secondProcess data from connected devices/apps
Integrated with highly-scalable publish-subscriber ingestor
Easy processing on continuous streams of data Transform, augment, correlate, temporal operations
Detect patterns and anomalies in streaming data
Correlate streaming with reference data
End-to-End Architecture Overview
Data Source Collect Process ConsumeDeliver
Event Inputs- Event Hub
- Azure Blob
Transform- Temporal joins
- Filter
- Aggregates
- Projections
- Windows
- Etc.
Enrich
Correlate
Outputs- SQL Azure
- Azure Blobs
- Event Hub
Azure
Storage
• Temporal Semantics
• Guaranteed delivery
• Guaranteed up time
Azure Stream Analytics
Reference Data- Azure Blob
No code compilation, easy to author and deploy
Brings together event streams, reference data and machine learning extensions
All operators respect, and some use, the temporal properties of events
These should (mostly) look familiar if you know relational databases
Filters, projections, joins, windowed (temporal) aggregates, text and date manipulation
Our toll station has multiple toll booths, where a sensor placed on top of the booth scans an RFID card affixed to the windshield of the vehicles as they pass the toll booth.
The passage of vehicles through these toll stations can be modelled as event streams over which interesting operations can be performed.
Toll Id
EntryTime LicensePlate State Make ModelVehicle Type
Vehicle Weight
Toll Tag
12014-09-10 12:01:00.000
JNB 7001 NY Honda CRV 1 1535 7
22014-09-10 12:02:00.000
YXZ 1001 NY Toyota Camry 1 1399 4 123456789
…
Toll Id ExitTime LicensePlate
1 2014-09-10T12:03:00.0000000Z JNB 7001
2 2014-09-10T12:03:00.0000000Z YXZ 1001
…
Projections
1, 1450, “VW”,
“Golf”, (…)
2, 1230, “Toyota”,
“Camry”, (…)
1, 2400, “VW”,
“Passat”, (…)1, 980, “Ford”,
“Fiesta”, (…)
SELECT TollId, VehicleWeight / 1000 AS Tons FROM EntryStream
1, 1.45 2, 1.23 1, 2.40 1, 0.980
Show me the Toll Id and Vehicle Weight in Tons for all vehicles passing through the Toll Booth
Filters
SELECT Model FROM EntryStream WHERE Make = "VW"
1, 1450, “VW”,
“Golf”, (…)
2, 1230, “Toyota”,
“Camry”, (…)
1, 2400, “VW”,
“Passat”, (…)1, 980, “Ford”,
“Fiesta”, (…)
“Golf” “Passat”
Show me the Model of vehicles manufactured by Volkswagen
Tumbling Windows
SELECT TollId, COUNT(*) FROM EntryStreamGROUP BY TollId, TumblingWindow(minute,5)
How many vehicles entered each toll both every 5 minutes?
Aggregate functions
Scalar functions
Date and time:
String:
Types
Type Description
bigint Integers in the range -2^63 (-9,223,372,036,854,775,808) to 2^63-1 (9,223,372,036,854,775,807).
float Floating point numbers in the range - 1.79E+308 to -2.23E-308, 0, and 2.23E-308 to 1.79E+308.
nvarchar(max) Text values, comprised of Unicode characters. Note: A value other than max is not supported.
datetime Defines a date that is combined with a time of day with fractional seconds that is based on a 24-hour clock and relative to
UTC (time zone offset 0).
Windows 10 IoT Editions
+Microsoft
Azure IoTSecurity &
Identity
Windows
Updates
Visual Studio &
UWP
Windows 10 IoT for industry devicesDesktop Shell, Win32 apps, Universal apps and drivers
Minimum: 1 GB RAM, 16 GB storage
X86/x64
Windows 10 IoT for mobile devicesModern Shell, Mobile apps, Universal apps and drivers
Minimum: 512 MB RAM, 4 GB storage
ARM
Windows 10 IoT CoreUniversal Apps and Drivers
No shell or MS apps
Minimum: 256MB RAM, 2GB storage
X86/x64 or ARM Integrated
Device
Connectivity
New User
Interfaces