A Pragmatic Reference Architecture for the Internet of Things Rick G. Garibay Senior SDM, Amazon.com Level: Beginner
Aug 04, 2015
A Pragmatic Reference
Architecture for the Internet
of Things
Rick G. GaribaySenior SDM,
Amazon.comLevel: Beginner
Agenda• What is the Internet of Things?
• IoT Problem Space
• IoT Value Chain (A Pragmatic Reference Architecture)
• Wrap Up
About Me• Senior Manager, Software Development @ Amazon.com
• Distributed Systems Nerd
• Published author and frequent contributor to CODE Magazine
• 8X Microsoft MVP
• Co-Author, “Windows Server AppFabric Cookbook” by Packt Pub.
• twitter: @rickggaribay
• blog: http://rickgaribay.net
• email: [email protected]
We’re hiring!
The Internet of Things: By the
Numbers
B5075212
This change is happening more rapidly than anyone imagined.
This change could bring tremendous opportunity to your employer, customers, industry and you as a
technologist.
The Internet of Things is the network of physical objects that contain embedded technology to
communicate and interact with their internal statesor the external environment.
OEM Revenue Opportunity |
Market Forecast CY17
Source: IDC Sept 2013 and Microsoft
Auto & Trans Retail Manufacturing Healthcare Energy Computing Telecom Consumer
$7 B $16 B $197 B $3 B $27 B $908 B $179 B $356 B System Revenue
IntelligentSystems
1.7T$
Smart Products
Grid
Renewables
Oil/Gas/Coal
Recovery and
Distribution
Points
of Sale
Restaurants
Hotels
Fuel
Stations
Patients
Clinics
Hospitals
Nursing
Homes
Mobile
Care
SafetySecurity
ComfortLighting
Automation
Manufacturing
Integration and
AutomationRemote
Servicing
Predictive and
Reactive
Maintenance
Water
Waste
Pollution
Control
Fire
Emergency
Public
Safety
Law
Enforcement
Letters
Packages
Containers
Tanks Bulkware
Games
Events
Sports
TelevisionStreaming
Traffic Buses
Cars
Trucks
Trains
Vessels
Aircraft
Bikes
Smart
Energy
Smart
Retail
Smart
Mobility
Smart
Logistics
Smart
Factory
Smart
Cities
Smart
Entertain-
ment
Smart
Health-
care
Smart
Building
Home
11
LA Express Park
CGM in the Cloud
13
What is IoT About?
Things (Devices)
Connectivity Data Analytics
IoT Device Taxonomy
Large
Mobile
Micro
Small
POS terminal, ATM, MRI
x86, PC-like, apps
Industry handheld, POS tablet
ARM and x86, shell experience, apps
Gateways, wearables, panels, cars
ARM and x86, diverse hardware, no shell
Controllers, fixed-use, sensors, actuators
ARM, constrained hardware, headless
Raspberry Pi
Intel Galileo
Gadgeteer Fez Spider
Arduino Uno
Netduino Plus 2
Spark
5mm 5mm
Pebble Smart Watch
What is the Internet of
Things?
Things (Devices)
Connectivity Data Analytics
Various Protocols
Canonical Message Types
Voluntary information flow
from device to another system.
Telemetry
Requests for information from device to other
systems.
Inquires
Instructions from other systems to
a device.
Commands
Information flow from other
systems to the device.
Notifications
Cloud Gateways
Connections are device-initiated and
outbound
NAT/Firewall Device (Router)
IP NAT
Cloud GatewaySource
Port mapping is automatic, outbound
Device does not listen for unsolicited traffic
No inbound ports open, attack surface is
minimized
Access-controlled command API
Secure, managed hosting platform
DNSmyapp.cloudapp.net
What is the Internet of
Things?
Things (Devices)
Connectivity Data Analytics
Event Velocity
Device telemetry• Thermostats report data
every 15 minutes
• Cars send telemetry data every minute
Application telemetry• Application perf counters are measured
every second per server
• Mobile app telemetry is captured for
every action on your app!
App and operational events• Halo game engine estimate 1,000,000
messages/second
What is the Internet of
Things?
Things (Devices)
Connectivity Data Analytics
The true significance of IoT is the
foundation it provides for enabling new
insights and unlocking new
opportunities.
The Vs of Big Data
Volume: Scale of Data
• 40 Zettabytes (43 Trillion Gigabytes) of data will be created by 2020. 300 Times increase from 2005
• 6B people have mobile phones
• Most companies in the U.S have at least 100Tb of data
Velocity: Streams of Data
• NYSE captures 1TB of trade information every day
• The average modern car has over 100 sensors
• 18.9 billion network connections by 2016
Variety: Endless forms of Data
• Nearly 420 Million wearable health monitors
• Over 4 Billion hours of video watched on YouTube everyday
Source: McKinsey Global, Twitter, Cisco, Gartner
IoT Value Pipeline
Ingest Staging Insight Action
Reference Architecture
Ingest & Staging Insight & Action
+
Reference Architecture
Ingest
HTTP MQTT AMQP CoAP …
Brokered Streamed
StagingBlob KVP Document
Insight
OLTP ETL CEP Big Data
Action
Custom APIs Brokered 3rd Party APIs
Security, M
anagem
ent, M
on
itorin
g
Brokered Communication
• Each device has a dedicated
Inbox/Outbox on the Gateway
– Device sends telemetry/alerts and routes
service invocations via its Outbox
– Device receives commands and queries from
its Inbox
– Correlated request/reply patterns can be
implemented on top of these two messaging
channels
– The device knows, and has access to, only its
own specific inbox/outbox endpoints (URI’s)
Backend Components
Cloud Gateway
Inbox
Outbox
Co
mm
and
AP
I
Pro
toco
l Hea
d
Streamed Communication
• Read (forward) and Rewind (go back)
data access
– Partition/shard-based
– Sequence of events, akin to a commit log
– Designed for high volume, high density ingest
– Typically (but not always) real-time use cases
Reference Architecture
Ingest
HTTP MQTT AMQP CoAP …
Brokered Streamed
StagingBlob KVP Document
Insight
OLTP ETL CEP Big Data
Action
Custom APIs Brokered 3rd Party APIs
Security, M
anagem
ent, M
on
itorin
g
Staging
Blob
•Any binary data
• Images, streams, big text files, etc.
KVP
•Any string
• JSON, XML
Document
• Typically JSON
Staging Considerations
Commands & Inquiries
• The capability provides transient staging typically tied to a retention period and/or TTL
• A worker typically consumes and processes work message by message
Telemetry & Notifications
• The capability provides high-throughput backing to be consumed by either durable or stream-based consumers
• Typically bulk writes or stream based readers
Reference Architecture
Ingest
HTTP MQTT AMQP CoAP …
Brokered Streamed
StagingBlob KVP Document
Insight
OLTP ETL CEP Big Data
Action
Custom APIs Brokered 3rd Party APIs
Security, M
anagem
ent, M
on
itorin
g
Insight
OLTP
• Structured queries
ETL
• Moving data from one staging area to another
CEP
• Reading and analyzing streams in real-time
Big Data
• Analyzing large amounts of data at rest
Reference Architecture
Ingest
HTTP MQTT AMQP CoAP …
Brokered Streamed
StagingBlob KVP Document
Insight
OLTP ETL CEP Big Data
Action
Custom APIs Brokered 3rd Party APIs
Security, M
anagem
ent, M
on
itorin
g
Action
Your APIs
• Commands & Notifications
• Business Scenarios
• Cloud hosted
• Behind the firewall
• Synchronous & Asynchronous
Brokered
• Commands & Notifications
• Devices you own, control
• Asynchronous by design
3rd Party APIs
• Commands & Notifications
• Typically commercial devices or devices supported by a vendor
Wrapping Up
• Model your solution across the four stages
• Evaluate the capability that’s right for you
based on your needs, team skills and
perhaps most important, the cost.
• Cloud providers are competing vigorously
which is great for customers!
A Pragmatic Reference
Architecture for the Internet
of Things
Rick G. GaribaySenior SDM,
Amazon.comLevel: Beginner