Iot Data Collection, Storage and Streaming Analytics
Iot Data Collection, Storage and Streaming Analytics
Iot Data Collection, Storage and Streaming Analytics
Management Capabilities
Application Layer
IoT Applications
(Asset Management, Smart cities, healthcare, )
Service, Application
Support Layer
Generic Support
Specific Support
Networking
Managing connections
across multiple networks
is not an easy job
Network Layer
Transport
Device Layer
Device
Gateway
Enterprises
Ref: Cisco
App1
App2
AppN
Hypervisor
Storage
Compute
Krish Prabhu, GIAN Lecture 4
Network
Ref: Cisco
11
Role of Fog
12
13
Ref: Aeris
14
Rest - Constraints
Clientserver - A uniform interface separates clients from servers
Clients are not concerned with data storage, so client code is portable
Servers are not concerned with the user interface or user state
Servers and clients may also be replaced and developed independently
Stateless - Client context is not stored on the server
Each request from any client contains all the information necessary to service the request
The session state can be transferred by the server to another service (i.e., a database)
There are means to facilitate a state-transition for the client
Cacheable - Clients and intermediaries can cache responses
Responses define themselves as cacheable, or not, to prevent clients from reusing stale data
Well-managed caching eliminates some clientserver interactions, further improving scalability and
performance.
Layered system - A client cannot ordinarily tell whether it is connected directly to the end server, or to an
intermediary along the way.
Intermediary servers improve system scalability
They may also enforce security policies.
15
REST - benefits
Complying with the architectural constraints of REST provides desirable non-functional properties, such as:
Performance Minimal component interactions (a dominant factor in user-perceived performance)
Scalability - Supports large numbers of components and interactions among components
Implementation
REST's clientserver separation simplifies component implementation and simplicity of
interfaces
Layered system constraints allow intermediariesproxies, gateways, and firewallsto be
introduced at various points.
REST enables intermediate processing by constraining messages to be self-descriptive
It facilitates modifiability of components to meet changing needs
Visibility of communication between components by service agents
Portability of components by moving program code with the data
17
Targeted for small low power sensors, switches, valves controlled or supervised remotely over the Internet
Application layer protocol that is intended for use in resource-constrained internet devices
Designed to easily translate to HTTP for simplified integration with the web
Offers multicast support, very low overhead, and simplicity (important for IoT where devices have much less
memory and power)
The Internet Engineering Task Force (IETF) Constrained RESTful environments (CoRE) Working
Group has done the major standardization (specified in RFC 7252)
The CoRE group has designed CoAP with the following features in mind:
Overhead and parsing complexity.
URI and content-type support.
Support for the discovery of resources provided by known CoAP services.
Simple subscription for a resource, and resulting push notifications.
Simple caching based on max-age.
With the introduction of CoAP, a complete networking stack of open standard protocols that are
suitable for constrained devices and environments, becomes available.
18
IoT data that scales to millions of users and billions of devices as needed
Have a rules engine that processes data in near real time which powers
sophisticated alerting functionality in applications
Support industry standard protocols for collecting data from devices including
CoAP and MQTT as well as provide support for custom protocols as needed
Offer REST API that supports both pushing data to applications and
applications pulling data on-demand
Offer a secure data sharing interface that enables sensor data to be consumed
by applications across the enterprise or by 3rd parties
19
Challenges
The Data Complexity Problem
With billions of sensors collecting trillions of data points, collecting, managing, and analyzing data on this scale
presents a big challenge. Gaining visibility and insight into devices, connectivity, and billing information is
important
Proactively Managing IoT Connectivity
Not only is there a need to identify devices with connectivity issues, but there is also a need to focus on a
specific device, time, or usage activity including data, SMS, voice, sessions, registrations, etc. This lets you find
specific devices that are outliers or are behaving abnormally. Automating this helps in rapid diagnosis and in
containing down time. For mobile end-points, costs also need to be managed by revealing coverage, data, SMS,
and roaming charges.
Setting Smart Alerts
Triggered by specific events, enabling the operator to build pre-defined actions to help to fix or mitigate a
problem.
Detecting Anomalies
Machine learning engine can identify anomalies such as certain devices using higher-than-normal amounts of
data (or security breaches) which can then feed into the smart alerts.
20
Solution
21
Ref: Aeris
End of Lecture
22