You want to implement an Internet of Things (IoT) solution and would like to know if it should be implemented in the cloud or on-premises. You are interested in the cloud offerings of vendors and what benefits they provide and if a similar solution would not be possible on-premises.
This presentation deals with this and other questions. Starting from an vendor-independent reference architecture and corresponding design patterns, different cloud solutions from various vendors are compared and rated. Additionally it will be shown how such solution could be implemented on-premises and how a hybrid IoT solution could look like.
Developer Data Modeling Mistakes: From Postgres to NoSQL
Internet of Things (IoT) - in the cloud or rather on-premises?
1. BASEL BERN BRUGG DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. GENF
HAMBURG KOPENHAGEN LAUSANNE MÜNCHEN STUTTGART WIEN ZÜRICH
Internet of Things (IoT)
in the cloud or rather on-premises?
Guido Schmutz – 5.7.2017
@gschmutz guidoschmutz.wordpress.com
2. Guido Schmutz
Working at Trivadis for more than 20 years
Oracle ACE Director for Fusion Middleware and SOA
Consultant, Trainer Software Architect for Java, Oracle, SOA and
Big Data / Fast Data
Head of Trivadis Architecture Board
Technology Manager @ Trivadis
More than 30 years of software development experience
Contact: guido.schmutz@trivadis.com
Blog: http://guidoschmutz.wordpress.com
Slideshare: http://www.slideshare.net/gschmutz
Twitter: gschmutz
2
4. Internet of Things (IoT) Wave
Internet of Things (IoT): Enabling
communication between devices, people
& processes to exchange useful information
& knowledge that create value for humans
Term first proposed by Kevin Ashton in 1999
Source: The Economist Source: Ericsson, June 2016
13. Traditional IT Cloud Computing Model
13
Standard model
Endpoint like computer,
notebooks, tablets … connect to
a core network
communication between
endpoints
data center or cloud backend
where an application is running
3 layered connectivity
architecture
3) Edge Computing
Source: cisco
14. IT Model, with IoT Requirements
14
• Additional Fog Layer
between Devices and
Core Network
• supports for
filter/aggregation in
edge/fog layer
• supports lower latency
action / reaction =>
direct feedback loop
3) Edge Computing
Source: cisco
15. Edge vs. Mist vs. Fog Computing
15
Edge Computing
• brings compute, storage and
networking resources directly to the
endpoints
• compute resources inside the device,
probably very constrained resources
• The edge feeds data into the Fog
layer
Mist Computing
• Direct communications between edge
devices
Fog Computing
• brings compute, storage and
networking as close to the endpoints
as possible
• away from the cloud, but does not
include the endpoints
3) Edge Computing
17. Server-Less
18
Run code “without” servers => only
specify functions
Pay only for the compute time you
consume => save money
Triggered by events or called from API’s
• store an object into an object/blob
storage system (S3)
• updates to a NoSQL database
(trigger)
• arrival of an IoT message (event)
Makes it easy to
• perform real-time processing
• build scalable back-end services
• glue and choreograph systems
Functions can be written in various
languages, such as
• Java / C#
• Python
• Node.js
Might have higher latency (due to
function being loaded at call-time)
3) Edge Computing 4) Data Accumulation 5) Data Abstraction
21. API / Service Integration
IoT Services
IoT Logical Reference Architecture
Low Power
IoT Device
Sensor
Actuator
IoT Gateway
UI
f()
Enterprise Apps
Process Mgmt
Rule Engine
IoTHub
Big Data / BI
Service
UIBL
Object
Analytics / ML
API
REST
HTTP
KAFKA
MQTT
AMQP
HTTPBLE
ZigBee
WIFI
Wired
22
UI Provisioning
Device Mgmt
State
Message Integration
Event HubAPI GW / Service Bus
Streaming Analytics
Rule Engine DB
DB
Containerized Apps
Micro
Service
REST
SOAP
HTTP
IP Capable
IoT Device
Sensor
Actuator
f()
DB
DB
Analytics
DB
Rule Engine
Analytics
API
Existing
IoT Device
Sensor
Actuator
MQTT
AMQP
HTTP
MQTT
AMQP
HTTP
22. API / Service Integration
IoT Services
IoT Logical Reference Architecture
Low Power
IoT Device
Sensor
Actuator
IoT Gateway
UI
f()
Enterprise Apps
Process Mgmt
Rule Engine
IoTHub
Big Data / BI
Service
UIBL
Object
Analytics / ML
API
REST
HTTP
KAFKA
MQTT
AMQP
HTTPBLE
ZigBee
WIFI
Wired
23
UI Provisioning
Device Mgmt
State
Message Integration
Event HubAPI GW / Service Bus
Streaming Analytics
Rule Engine DB
DB
Containerized Apps
Micro
Service
REST
SOAP
HTTP
IP Capable
IoT Device
Sensor
Actuator
f()
DB
DB
Analytics
DB
Rule Engine
Analytics
API
Existing
IoT Device
Sensor
Actuator
MQTT
AMQP
HTTP
MQTT
AMQP
HTTP
Physical Devices
& Controllers
Connectivity
Edge Computing Data Accumulation
Data Abstraction
Application
Collaboration &
Processes
24. API / Service Integration
IoT Services
Amazon IoT Platform
Low Power
IoT Device
Sensor
Actuator
IoT Gateway
UI
f()
Enterprise Apps
Process Mgmt
Rule Engine
IoTHub
Big Data / BI
Service
UIBL
Object
Analytics / ML
API
REST
HTTP
KAFKA
MQTT
AMQP
HTTPBLE
ZigBee
WIFI
Wired
33
UI Provisioning
Device Mgmt
State
Message Integration
Event HubAPI GW / Service Bus
Streaming Analytics
Rule Engine DB
DB
Containerized Apps
Micro
Service
REST
SOAP
HTTP
IP Capable
IoT Device
Sensor
Actuator
f()
DB
DB
Analytics
DB
Rule Engine
Analytics
API
Existing
IoT Device
Sensor
Actuator
MQTT
AMQP
HTTP
MQTT
AMQP
HTTP
Rules Engine
Lambda
S3
Greengrass
S3 Dynamo
DB
Dynamo DB
Message Broker
Thing
Shadow
Thing
Registry
AWS IoT Platform EWR
Kinesis FirehoseSQS
EC2 Container Service
EC2 Container Registry
SnowmobileSnowball Edge
Snowball
Polly
ML
Lex
Recognition
Elasticsearch
Kinesis Analytics
Kinesis Streams
SNSEmail
PinpointAPI Gateway
Mobile Hub
Mobile SDK
Cognito
Lambda
Lambda
EC2
Auto Scaling
Rules Engine
Lambda
25. API / Service Integration
IoT Services
Microsoft Azure Cloud
Low Power
IoT Device
Sensor
Actuator
IoT Gateway
UI
f()
Enterprise Apps
Process Mgmt
Rule Engine
IoTHub
Big Data / BI
Service
UIBL
Object
Analytics / ML
API
REST
HTTP
KAFKA
MQTT
AMQP
HTTPBLE
ZigBee
WIFI
Wired
38
UI Provisioning
Device Mgmt
State
Message Integration
Event HubAPI GW / Service Bus
Streaming Analytics
Rule Engine DB
DB
Containerized Apps
Micro
Service
REST
SOAP
HTTP
IP Capable
IoT Device
Sensor
Actuator
f()
DB
DB
Analytics
DB
Rule Engine
Analytics
API
Existing
IoT Device
Sensor
Actuator
MQTT
AMQP
HTTP
MQTT
AMQP
HTTP
IoT Edge
Stream
Analytics
Document DB
IoT Gateway
IoTHub
Event Hub
Functions
Service Bus
HD Insight
Storage
Storage
Machine Learning
Document
DB
DataLake
BizTalk Services
Notification Hub
Power BI
Stream
Analytics
API Management
IoT Suite
26. API / Service Integration
IoT Services
Oracle Cloud
Low Power
IoT Device
Sensor
Actuator
IoT Gateway
UI
f()
Enterprise Apps
Process Mgmt
Rule Engine
IoTHub
Big Data / BI
Service
UIBL
Object
Analytics / ML
API
REST
HTTP
KAFKA
MQTT
AMQP
HTTPBLE
ZigBee
WIFI
Wired
44
UI Provisioning
Device Mgmt
State
Message Integration
Event HubAPI GW / Service Bus
Streaming Analytics
Rule Engine DB
DB
Containerized Apps
Micro
Service
REST
SOAP
HTTP
IP Capable
IoT Device
Sensor
Actuator
f()
DB
DB
Analytics
DB
Rule Engine
Analytics
API
Existing
IoT Device
Sensor
Actuator
MQTT
AMQP
HTTP
MQTT
AMQP
HTTP
Event Hub CS
IoT CS
Stream
Analytics
Big Data CS
Stream
Analytics NoSQL CS
Big Data
Discovery CS
Big Data
Preparation CS
Edge
Analytics
IoT CS
Gateway
SOA CS
Process CS
Integration CSMessaging CS
Mobile CS
Container CS
Application
Container CS
BI CS
Dataflow ML
NoSQL
Device Mgmt
Service CS
Field Service CS
27. Oracle Cloud Demo @ Schwabengipfel
45
IOT CS
Mobile CS
SOA CS
Integration CSBICS
Process CS
DOCS
Service Cloud
OPA CS
Field Service Cloud
31. API / Service Integration
IoT Services
IoT on-premises – Oracle Cloud Machine
Low Power
IoT Device
Sensor
Actuator
IoT Gateway
UI
f()
Enterprise Apps
Process Mgmt
Rule Engine
IoTHub
Big Data / BI
Service
UIBL
Object
Analytics / ML
API
REST
HTTP
KAFKA
MQTT
AMQP
HTTPBLE
ZigBee
WIFI
Wired
50
UI Provisioning
Device Mgmt
State
Message Integration
Event HubAPI GW / Service Bus
Streaming Analytics
Rule Engine DB
DB
Containerized Apps
Micro
Service
REST
SOAP
HTTP
IP Capable
IoT Device
Sensor
Actuator
f()
DB
DB
Analytics
DB
Rule Engine
Analytics
API
Existing
IoT Device
Sensor
Actuator
MQTT
AMQP
HTTP
MQTT
AMQP
HTTP
Event Hub CS
IoT CS
Stream
Analytics
Big Data CS
Stream
Analytics NoSQL CS
Big Data
Discovery CS
Big Data
Preparation CS
Edge
Analytics
IoT CS
Gateway
SOA CS
Process CS
Integration CSMessaging CS
Mobile CS
Container CS
Application
Container CS
BI CS
Dataflow ML
NoSQL
Device Mgmt
Service CS
Field Service CS
32. API / Service Integration
IoT Services
IoT on-premises – Open Source
Low Power
IoT Device
Sensor
Actuator
IoT Gateway
UI
f()
Enterprise Apps
Process Mgmt
Rule Engine
IoTHub
Big Data / BI
Service
UIBL
Object
Analytics / ML
API
REST
HTTP
KAFKA
MQTT
AMQP
HTTPBLE
ZigBee
WIFI
Wired
51
UI Provisioning
Device Mgmt
State
Message Integration
Event HubAPI GW / Service Bus
Streaming Analytics
Rule Engine DB
DB
Containerized Apps
Micro
Service
REST
SOAP
HTTP
IP Capable
IoT Device
Sensor
Actuator
f()
DB
DB
Analytics
DB
Rule Engine
Analytics
API
Existing
IoT Device
Sensor
Actuator
MQTT
AMQP
HTTP
MQTT
AMQP
HTTP
34. API / Service Integration
IoT Services
Hybrid IoT Solutions
Low Power
IoT Device
Sensor
Actuator
IoT Gateway
UI
f()
Enterprise Apps
Process Mgmt
Rule Engine
IoTHub
Big Data / BI
Service
UIBL
Object
Analytics / ML
API
REST
HTTP
KAFKA
MQTT
AMQP
HTTPBLE
ZigBee
WIFI
Wired
UI Provisioning
Device Mgmt
State
Message Integration
Event HubAPI GW / Service Bus
Streaming Analytics
Rule Engine DB
DB
Containerized Apps
Micro
Service
REST
SOAP
HTTP
IP Capable
IoT Device
Sensor
Actuator
f()
DB
DB
Analytics
DB
Rule Engine
Analytics
API
Existing
IoT Device
Sensor
Actuator
MQTT
AMQP
HTTP
MQTT
AMQP
HTTP
Cloud On-PremisesFogEdge
35. API / Service Integration
IoT Services
Hybrid IoT Solutions
Low Power
IoT Device
Sensor
Actuator
IoT Gateway
UI
f()
Enterprise Apps
Process Mgmt
Rule Engine
IoTHub
Big Data / BI
Service
UIBL
Object
Analytics / ML
API
REST
HTTP
KAFKA
MQTT
AMQP
HTTPBLE
ZigBee
WIFI
Wired
UI Provisioning
Device Mgmt
State
Message Integration
Event HubAPI GW / Service Bus
Streaming Analytics
Rule Engine DB
DB
Containerized Apps
Micro
Service
REST
SOAP
HTTP
IP Capable
IoT Device
Sensor
Actuator
f()
DB
DB
Analytics
DB
Rule Engine
Analytics
API
Existing
IoT Device
Sensor
Actuator
MQTT
AMQP
HTTP
MQTT
AMQP
HTTP
Cloud On-PremisesFogEdge