Scaling IoT: Telemetry, Command & Control, Analytics and the Cloud

Post on 07-Jan-2017

339 views 0 download

Transcript of Scaling IoT: Telemetry, Command & Control, Analytics and the Cloud

http://meetup.com/mmadnyc

“A computer in every pot and chicken.”

“A chicken in every pot.” ~ Henry IV of France – 17th Century

“A computer on every desk

and in every home.”~ Bill Gates (1977)

Connectivity is Pervasive

Development is Easy

Hardware is Cheap

New Innovative Scenarios

1970 1980 1990 2000 2010

10,000,000,000

1,000,000,000

100,000,000

10,000,000

1,000,000

100,000

10,000

1,000

Transistors

Moore’s Law Metcalf‘s Law

And more importantly:

What can you do by combining and analyzing signals from all of these IoT devices?

Koomey’s Law

1.E+14

1.E+12

1.E+10

1.E+08

1.E+06

1.E+04

1.E+02

1.E+00

Computations

per KWh

1940 20101975

What if I could tell when it’s the best time for my things to _______ ?

What if my things could tell me when they go someplace they shouldn’t?

What if I simply knew where my things were?

What if I knew when my things were going to break before they did?

What if I could use device telemetry to improve next generation devices?

What insights could I find from all of my devices?

It all starts with a great idea…

Next comes a device…

And data from that device…

0100101010001010100101010010101010100101010101011010101010….

And securing the device…

0100101010001010100101010010101010100101010101011010101010….

And insights from that data…

0100101010001010100101010010101010100101010101011010101010….

Then lots of devices and data…

0100101010001010100101010010101010100101010101011010

0100101010001010100101010010101010100101010101011010101010001

0100101010001010100101010010101010100101010101011010101010101010100010101

010010101000101010010101001010101010010101010101101010101010001011110101010101010100

01001010100010101001010100101010101001010101010110101010101010101000101010

0100101010001010100101010010101010100101010101011010101010….

010010101000101010010101001010101010010101010101101010101010101

01001010100010101001010100101010101001010101010110101010101001001010110001010101010

010010101000101010010101001010101010010101010101101010101011000101001011

Then lots of devices and data…

0100101010001010100101010010101010100101010101011010

0100101010001010100101010010101010100101010101011010101010001

0100101010001010100101010010101010100101010101011010101010101010100010101

010010101000101010010101001010101010010101010101101010101010001011110101010101010100

01001010100010101001010100101010101001010101010110101010101010101000101010

0100101010001010100101010010101010100101010101011010101010….

010010101000101010010101001010101010010101010101101010101010101

01001010100010101001010100101010101001010101010110101010101001001010110001010101010

010010101000101010010101001010101010010101010101101010101011000101001011

Then monitoring their data in real time…

0100101010001010100101010010101010100101010101011010

0100101010001010100101010010101010100101010101011010101010001

0100101010001010100101010010101010100101010101011010101010101010100010101

010010101000101010010101001010101010010101010101101010101010001011110101010101010100

01001010100010101001010100101010101001010101010110101010101010101000101010

0100101010001010100101010010101010100101010101011010101010….

010010101000101010010101001010101010010101010101101010101010101

01001010100010101001010100101010101001010101010110101010101001001010110001010101010

010010101000101010010101001010101010010101010101101010101011000101001011

Then looking for patterns and insights in the data over time…

0100101010001010100101010010101010100101010101011010

0100101010001010100101010010101010100101010101011010101010001

0100101010001010100101010010101010100101010101011010101010101010100010101

010010101000101010010101001010101010010101010101101010101010001011110101010101010100

01001010100010101001010100101010101001010101010110101010101010101000101010

0100101010001010100101010010101010100101010101011010101010….

010010101000101010010101001010101010010101010101101010101010101

01001010100010101001010100101010101001010101010110101010101001001010110001010101010

010010101000101010010101001010101010010101010101101010101011000101001011

Then managing and updating the software on these devices…

0100101010001010100101010010101010100101010101011010

0100101010001010100101010010101010100101010101011010101010001

0100101010001010100101010010101010100101010101011010101010101010100010101

010010101000101010010101001010101010010101010101101010101010001011110101010101010100

01001010100010101001010100101010101001010101010110101010101010101000101010

0100101010001010100101010010101010100101010101011010101010….

010010101000101010010101001010101010010101010101101010101010101

01001010100010101001010100101010101001010101010110101010101001001010110001010101010

010010101000101010010101001010101010010101010101101010101011000101001011

And visualizing and managing all of these services…

0100101010001010100101010010101010100101010101011010

0100101010001010100101010010101010100101010101011010101010001

0100101010001010100101010010101010100101010101011010101010101010100010101

010010101000101010010101001010101010010101010101101010101010001011110101010101010100

01001010100010101001010100101010101001010101010110101010101010101000101010

0100101010001010100101010010101010100101010101011010101010….

010010101000101010010101001010101010010101010101101010101010101

01001010100010101001010100101010101001010101010110101010101001001010110001010101010

010010101000101010010101001010101010010101010101101010101011000101001011

What is the Internet of Things?

Connectivity Data AnalyticsThings

Comprehensive solutions from device to cloud

IoT Editions Power a Broad Range of Devices

25 years of history in embedded devices

One Windows platform for all devices

Enterprise-ready, OEM-ready, Maker-friendly

Designed for today’s IoT environments

Scalable solutions from free Windows IoT Core to

Windows IoT Enterprise on PC-Like Devices

Cloud-Based IoT Services & Solutions

Easy to provision, use and manage

Pay as you go, scale as you need

Global reach, hyper scale

End-to-end security & privacy

Windows, Mbed, Linux, iOS, Android, RTOS and

wide hardware devices support

Azure IoT

Platform Services

Infrastructure Services

Web Apps

MobileApps

APIManagement

API Apps

Logic Apps

Notification Hubs

Content DeliveryNetwork (CDN)

Media Services

BizTalkServices

HybridConnections

Service Bus

StorageQueues

HybridOperations

Backup

StorSimple

Azure SiteRecovery

Import/Export

SQL Database

DocumentDB

RedisCache

AzureSearch

StorageTables

DataWarehouse

Azure AD Health Monitoring

AD PrivilegedIdentity Management

OperationalAnalytics

Cloud Services

BatchRemoteApp

ServiceFabric

Visual Studio

AppInsights

Azure SDK

VS Online

Domain Services

HDInsight MachineLearning

StreamAnalytics

Data Factory

EventHubs

MobileEngagement

Data Lake

IoT Hub

Data Catalog

Security & Management

Azure ActiveDirectory

Multi-FactorAuthentication

Automation

Portal

Key Vault

Store/Marketplace

VM Image Gallery& VM Depot

Azure ADB2C

Scheduler

Finish with your Internet of Your Things solutionStart quickly with pre-configured solutions

Modify existing rules and alerts

Fine-tuned to specific assets and processes

Integrate with back-end systems

Highly visual for your real-time operational data

Get started in minutes

Add your devices and begin trailering to your needs

Business

Process

ERP/CRMEvent Hub

Storage Blobs DocumentDB

Web App

Stream Analytics Logic Apps

Azure

Active Directory

IoT Hub Web Jobs

DevicesAzure IoT SDK (OSS)

Linux, RTOS, mBed, Windows,

Android, iOS

Power BI

https://azure.microsoft.com/en-us/suites/iot-suite/

https://azure.microsoft.com/en-us/services/iot-hub/

Arduino 101

& Grove Base Shield

Resource Group

<name>group

Router w/ Internet Access

IoT H

ub

<nam

e>

iot

SEND / RECEIVE

SEND / RECEIVE

LAB ARCHITECTURE

LOC

AL

RESO

UR

CES

AZ

UR

E R

ESO

UR

CES

Temperature

Sensor

Buzzer

Rotary

Angle

Sensor

2 Row LCD Display

Intel NUC / IoT Gateway

Development

Workstation

(Windows / OSx / Linux)

Arduino 101

& Grove Base Shield

Resource Group

<name>group

Even

t Hu

b N

am

esp

ace

<n

am

e>

ns

Po

werB

IEm

bed

ded

Wo

rksp

ace

Co

llectio

n

<n

am

e>

co

llectio

n

Po

werB

IEm

bed

ded

Wo

rksp

ace

Dyn

am

ically

gen

era

ted

gu

id

Rep

ort

Tem

pera

ture

Ch

art

Ap

p S

erv

ice P

lan

<n

am

e>

pla

nFu

nctio

n A

pp

<n

am

e>

fun

ctio

ns

Fu

nctio

n

Tem

pA

lert

Web

Ap

p

<n

am

e>

web

SQ

L S

erv

er

<n

am

e>

sql

SQ

L D

b

<n

am

e>

db

Router w/ Internet Access

Stre

am

An

aly

tics

<n

am

e>

job

Even

t Hu

b

<n

am

e>

ale

rts

IoT H

ub

<n

am

e>

iot

INPUT

OUTPUT

DIRECT QUERY

QUERY

RECEIVE

RENDER

SEND CLOUD-TO-DEVICE MESSAGESSEND / RECEIVE

GET / POST

SEND CLOUD-TO-DEVICE-MESSAGES

SEND / RECEIVE

LAB ARCHITECTURE

LO

CA

L R

ESO

UR

CES

AZ

UR

E R

ESO

UR

CES

Temperature

Sensor

Buzzer

Rotary

Angle

Sensor

2 Row LCD Display

Intel NUC / IoT Gateway

Development

Workstation

(Windows / OSx / Linux)

OUTPUT

Sto

rag

e A

ccou

nt

<n

am

e>

stora

ge

READ / WRITE

Update Floor 1

Permissions: Group 1 Permissions: Group 2

Azure IoT Hub

Device Management APIs

Device Query API

Tags, Device and Service Properties

Device Jobs API

Create, Monitor, Cancel

LWM2M over CoAP/TCP

Device

DM Client

Library

Device App

(Your Code)Registry Manager API

Create, Update, Delete Devices ApplicationYour Code

Azure IoT Suite

Device Management Objects

Device (Object)

Device State

Device Groups API

Groups CRUD, Add/Remote Devices,

Events, Access Control

Azure IoT HubDevice

Your code

on the device

IoT Hub DM

client library

Step 1

Step 2

Step 3

Device Job

Write Firmware

Package URI,

Trigger Client

Download

Package URI

Download

Package URI

Download Completed

Download the

firmware

Apply the

UpdateApply Update

Reconnect after restart

Monitor State

Changes and

Apply Update

Azure IoT Suite

Your code

in the cloud

Step 1:

Start Firmware

Update Job

providing the

Package URI

On Job

Completed:

Receive callback in

cloud

Anytime during

job execution:

Check the status of

the Job

How do I get started? What do I need?Any good tutorials out there?

http://azure.com/iotstarterkits

(concurrent with Module 3)

(concurrent with Module 2)

http://thinglabs.io/azure/

https://github.com/ActiveNick/Arduino-Samples

https://github.com/ActiveNick/Windows10-IoT-Core-Demos

https://github.com/ActiveNick/Particle-Samples

https://github.com/arduino-libraries/AzureIoTHub

The Maker ShowChannel 9 show makers, hackers, builders and disassemblers

Hands-on demos and know-how,by makers for makers

http://themakershow.io

Follow @TheMakerShow

www.windowsondevices.com

Projects powered by hackster.io

https://microsoft.hackster.io

Check out the MS IoT GitHub for

more Windows IoT Core

samples:

https://github.com/ms-

iot/samples

https://github.com/ms-iot/samples

https://microsoft.hackster.io

www.hackaday.com

www.instructables.com

www.creativeapplications.net

http://themakershow.io

https://mva.microsoft.com/en-US/training-courses/getting-started-with-the-internet-of-things-iot-16170

Slides are on Slideshare. Demos are on GitHub.

Slideshare: www.slideshare.net/ActiveNick

Blog: www.AgeofMobility.com

Twitter: @ActiveNick

Mobile Apps: www.bigbaldapps.com

LinkedIn: www.linkedin.com/in/activenick

GitHub: github.com/ActiveNick

Email: nick.landry@microsoft.com