SlideShare a Scribd company logo
A REFERENCE
ARCHITECTURE
FOR INTERNET
OF THINGS
SUJEE MANIYAM
FOUNDER / PRINCIPAL @ ELEPHANTSCALE
SUJEE@ELEPHANTSCALE.COM
(c) Elephant Scale 2015
HI, I’M SUJEE MANIYAM
•  Founder / Principal @ ElephantScale
•  Consulting & Training in Big Data
•  Training in Spark / Hadoop / NoSQL /
Data Science
•  Author
•  “Hadoop illuminated” open source book
•  “HBase Design Patterns
•  Open Source contributor: github.com/sujee
•  sujee@elephantscale.com
•  http://sujee.net
(c) Elephant Scale 2015
Spark
Training
available!
INTERNET OF THINGS – A
REALITY
(c) Elephant Scale 2015
DATA INFRASTRUCTURE
?
(c) Elephant Scale 2015
DATA VOLUME ?
A NAPKIN CALCULATION
Say we have
•  Million sensors
•  Each sensor reports every minute
•  data size 1KB
This will result in :
•  1.44 Billions events / day !
•  1.44 TB / day !!
(c) Elephant Scale 2015
SENSOR DATA WORKSHEET
IoT Temperature Sensor Projection
variables description
sensors 1M 1.00E+06 1 million
signal frequency every min / 60 secs 60 secs
event size 1KB 1000 bytes
events per day per sensor 1440
total events per day 1.44E+09 1440$$millions1.44$$billion
total events / sec 1.67E+04 16,666.67$$
total data size per day 1.44E+12 1440$$$GB 1.44$$TB
(c) Elephant Scale 2015
SENSOR DATA : TEXAS UTILITIES
SMART METER DATA
Texas Smart Meter Projections
variables description
sensors 10 million customers 1.00E+07 10 million
signal frequency every 15 mins 900 secs
event size 1.4 K 1400 bytes
events per day per sensor 96
total events per day 9.60E+08 960$$millions 0.96$$billion
total events / sec 1.11E+04 11,111.11$$
total data size per day 1.34E+12 1344$$$GB 1.344$$TB
(c) Elephant Scale 2015
BIG ‘DATA’
(c) Elephant Scale 2015
DATA VELOCITY
Say we have
•  Million sensors
•  Each sensor reports every minute
•  data size 1KB
è
•  Millions events / minute
•  ~ 17,000 events / sec
(c) Elephant Scale 2015
DATA PROCESSING SPEED
•  Need (near) real time processing most of the time
•  E.g. Need to alert if temperature suddenly spikes
temp
Time
Alert
(c) Elephant Scale 2015
CHALLENGE = BIG DATA +
REAL TIME
•  Don’t loose events !
•  Any event could be important
•  Most events are mundane (e.g. temperature stays
between 68’F – 72’ F)
•  Process them in near real time
•  Store the events for a long time
•  Audit
•  Diagnose
•  Support various queries
•  Real time (what is the latest temperature for sensor id
123?)
•  Aggregate (what is the avg. temp in zipcode 12345)
(c) Elephant Scale 2015
HIGH LEVEL ARCHITECTURE
(c) Elephant Scale 2015
NEXT : (1) CAPTURE
(c) Elephant Scale 2015
(1) CAPTURE
REQUIREMENTS
Requirements:
•  Capture events coming at high speed
•  Tens of thousands events / sec (some times millions / sec)
•  Don’t loose events
•  Tolerate hardware / software failure
•  Tolerate intermittent connectivity issues
•  Scale ‘easily’
(c) Elephant Scale 2015
(1) CAPTURE
CHOICES
•  MQ (RabbitMQ ..etc)
•  Good adoption in enterprises / durable
•  FluentD
•  Data collector for various sources
•  Flume
•  Part of Hadoop eco system
•  Good for collecting logs from many sources
•  AWS Kinesis
•  Queue system in Amazon Cloud
•  Kafka
•  Distributed queue
(c) Elephant Scale 2015
(1) CAPTURE
MEET KAFKA
•  Apache Kafka is a distributed messaging system
•  Came out of LinkedIn… open sourced in 2011
•  Built to tolerate hardware / software / network failures
•  Built for high throughput and scale
•  LinkedIn : 220 Billion messages / day
•  At peak : 3+ million messages / day
(c) Elephant Scale 2015
(1) CAPTURE
KAFKA ARCHITECTURE
•  Publisher - subscriber / producer – consumer model
(c) Elephant Scale 2015
(1) CAPTURE
KAFKA ARCHITECTURE
•  Producers write data
to brokers
•  Consumers read data
from brokers
•  All of this is
distributed / parallel
•  Failure tolerant
•  Data is stored as topics
•  “sensor_data”
•  “alerts”
•  “emails”
(c) Elephant Scale 2015
(1) CAPTURE
KAFKA USERS
•  Linked In
•  Track user activities
•  Sending emails
•  Netflix
•  Real time monitoring
•  Spotify
•  Ship logs to hadoop
•  Uber… AirBnB….
(c) Elephant Scale 2015
(1) CAPTURE
ARCHITECTURE WITH KAFKA
(c) Elephant Scale 2015
NEXT : (2) PROCESSING
(c) Elephant Scale 2015
(2) PROCESSING
REQUIREMENTS
•  Process events in real time or near real time
•  High velocity
•  Tens of thousands à millions of events / sec
•  Guaranteed processing
•  Process an event at-least-once
•  Exactly-once (harder to achieve)
•  Failure tolerant
•  Scale ‘easily’
(c) Elephant Scale 2015
(2) PROCESSING
CHOICES
•  Storm
•  Process streams
•  Events based
•  Came out of twitter
•  Apache Samza
•  Stream processing framework based on Kafka + Hadoop
YARN
•  Apache NiFi
•  Data flow
•  New project / incubating
•  Spark streaming
(c) Elephant Scale 2015
(2) PROCESSING
MEET SPARK
•  Spark is the new darling of ‘Big Data’ world
•  Lot’s of activity and interest
•  Fast and Expressive Cluster Compute Engine
•  “First Big Data platform to integrate batch, streaming and
interactive computations in a unified framework” –
stratio.com
Hadoop
Spark
(c) Elephant Scale 2015
(2) PROCESSING
SPARK ECO-SYSTEM
(c) Elephant Scale 2015
Spark Core
Spark
SQL
Spark
Streaming
ML lib
Schema /
sql
Real Time
Machine
Learning
Stand alone YARN MESOS
Cluster
managers
GraphX
Graph
processing
(2) PROCESSING
SPARK DATA SOURCE
ABSTRACTION
Spark
(compute
engine)
HDFS
Amazon
S3
Cassandra ???
RDD
Hadoop
RDD
Cassandra
RDD
(c) Elephant Scale 2015
(2) PROCESSING
SPARK : ‘UNIFIED’ STACK
Spark supports multiple programming models
•  Map reduce style batch processing
•  Streaming / real time processing
•  Querying via SQL
•  Machine learning
All modules are tightly integrated
•  Facilitates rich applications
Spark can be only stack you need !
(c) Elephant Scale 2015
Image: buymeposters.com
(2) PROCESSING
SPARK STREAMING
Streaming
Sources
Storage
(c) Elephant Scale 2015
(2) PROCESSING
SPARK STREAMING
•  Provides ‘high level’ operations in time windows
•  E.g. ‘calculate X for the past 10 seconds’
•  Good adoption
(c) Elephant Scale 2015
(2) PROCESSING
ARCHITECTURE WITH SPARK
STREAMING
(c) Elephant Scale 2015
NEXT : STORAGE
(c) Elephant Scale 2015
(3) STORAGE
REQUIREMENTS
•  Handle ‘Big Data’ ( 1 TB / day !)
•  Traditional storages are not effective (or too expensive)
•  Need two types of storage
1.  ‘forever’ storage
•  Store multi terabytes of data for a long periods
•  Support Batch queries
2.  ‘fast / real-time lookup’ storage
•  Query in real time (milliseconds)
“what is the latest reading for sensor-123 ?”
•  Store latest / new data (e.g. last 3 months)
•  Flexible schema for semi-structured data
•  Both need to scale
(c) Elephant Scale 2015
(3) STORAGE
REQUIREMENTS
(c) Elephant Scale 2015
(3) STORAGE
CHOICES
•  ‘forever’ storage
•  Scalable distributed file systems
•  Hadoop ! (HDFS actually)
•  ‘real time store’
•  Traditional RDBMS won’t work
•  Don’t scale well (or too expensive)
•  Rigid schema layout
•  NoSQL !
(c) Elephant Scale 2015
(3) STORAGE
HDFS (IN 20 SECS)
•  Distributed file system
•  Runs on commodity servers
•  à high ROI
•  Can keep ticking even when nodes go down
•  à fault tolerant
•  Replicates data to prevent data loss in case of node
failures
•  à built in backup J
•  Scales to Peta bytes (horizontal scalability)
•  Proven in the field
(c) Elephant Scale 2015
(3) STORAGE
HDFS ARCHITECTURE
(c) Elephant Scale 2015
(3) STORAGE
COST OF BIG DATA
Source : hortonworks
(c) Elephant Scale 2015
(3) STORAGE
HDFS
•  Can handle big data
•  Scales easily
•  Cost effective
•  “Source of Truth”
•  Files are immutable within HDFS (new data is ‘appended’ )
•  Audit friendly
(c) Elephant Scale 2015
(3) STORAGE
CAPACITY PLANNING (HADOOP)
Variables (tweak these) description value units
Average daily ingest 1000 GB
raw data node storage eg. 12 disks x 3TB 36 TB
replication default 3 3
space allocated for HDFS HDFS 75% + Mapreduce 25% 75.00%
growth per month (not calculated) 0
Calculation
effective data storage per node 27 TB
growth 1 month 6 month 1 yr 2 yr
data size (TB) 90 540 1,080 2,160
# data nodes 3.333333333 20 40 80
(c) Elephant Scale 2015
(3) STORAGE (REAL TIME)
CHOICES FOR NOSQL
•  Too many ! J
•  HBase
•  Part of Hadoop eco system
•  Uses HDFS for storage
•  Provides consistent view of data
•  Cassandra
•  Popular NoSQL store
•  No Single Point of Failure (SPOF) – ring architecture
•  No dependency on Hadoop
•  Accumulo
•  Came out of NSA !
•  Uses HDFS for storage
•  Provides very good security (naturally !)
(c) Elephant Scale 2015
(3) STORAGE
CAP THEOREM
(c) Elephant Scale 2015
(3) STORAGE
ARCHITECTURE SO FAR
(c) Elephant Scale 2015
NEXT : QUERY
(c) Elephant Scale 2015
(3) QUERY
REQUIREMENTS
•  Real Time queries
•  “what is the latest reading for the sensor id = 123”
•  Useful for building applications /
dashboards
•  Latency : milli-seconds
•  Batch / Aggregate queries
•  “What is the average temperature in
zip code = 12345” ?
•  May need to go through large data points
•  Latency : ‘batch’ (minutes / hours)
(c) Elephant Scale 2015
(3) QUERY
SOLUTIONS
•  Batch queries
•  Query data in HDFS (and or NoSQL)
•  Hadoop mapreduce (Pig / Hive)
•  Spark batch analytics
•  Real time queries
•  Queries to go NoSQL store
HDFS
NoSQL
Real time
queries
Batch queries
(c) Elephant Scale 2015
(3) QUERY
ARCHITECTURE
(c) Elephant Scale 2015
FINAL ARCHITECTURE
(c) Elephant Scale 2015
LAMBDA ARCHITECTURE
(c) Elephant Scale 2015
LAMBDA ARCHITECTURE
EXPLAINED
1.  All new data is sent to both batch layer and speed layer
2.  Batch layer
•  Holds master data set (immutable , append-only)
•  Answers batch queries
3.  Serving layer
•  updates batch views so they can be queried adhoc
4.  Speed Layer
•  Handles new data
•  Facilitates fast / real-time queries
5.  Query layer
•  Answers queries using batch & real-time views
(c) Elephant Scale 2015
INCORPORATING LAMBDA
ARCHITECTURE
(c) Elephant Scale 2015
OUR ARCHITECTURE
•  Each component is scalable
•  Each component is fault tolerant
•  Incorporates best practices
•  All open source !
(c) Elephant Scale 2015
… AND ONE MORE THING…
•  Security !
(c) Elephant Scale 2015
Source : businessinsider.com
HOW EVER…
(c) Elephant Scale 2015
At scale nothing works as advertised !
GOOD NEWS !
•  We are building an open source, reference data platform for IoT /
connected devices!
•  Yes, open source ! J
•  ElephantScale is a strong believer in open source
•  “hadoop illuminated” – open source Hadoop book
•  Github.com/elephantscale
•  Best practices
•  Bringing together lots of expertise in Big Data systems
•  Register your interest
http://elephantscale.com/iotx/
(c) Elephant Scale 2015
GOALS FOR IOTX
http://elephantscale.com/iotx/
•  Use open-source proven components
•  Capture :
•  Kafka
•  Kinesis (AWS)
•  Processing : Spark Streaming
•  Batch storage : Hadoop / HDFS
•  Real Time Store : support multiple data stores
•  Cassandra
•  Hbase
•  Accumulo
•  ???
(c) Elephant Scale 2015
GOALS FOR IOTX…
http://elephantscale.com/iotx/
•  Query templates using
•  Spark
•  Hadoop Map Reduce (Pig / Hive)
•  Incorporate third party libraries for
•  Outlier detection (temperature is outside norms)
•  Trend detection (stock price is trending up)
•  Alerts (fire !)
•  Monitoring & Metrics (key !!)
•  What’s going in the system?
•  Host / system level (cpu / network ..etc) – easier
•  application level (e.g. find slow queries) – harder
•  Incorporate third party libraries
(c) Elephant Scale 2015
THANKS AND QUESTIONS?
“A Reference Architecture for Internet of
Things (IoT)”
Sujee Maniyam
Founder / Principal @ ElephantScale
Expert Consulting + Training in Big Data technologies
sujee@elephantscale.com
Elephantscale.com
Project sign up page : http://elephantscale.com/iotx/
(c) Elephant Scale 2015
IMAGE CREDITS
•  www.engadget.com
•  Xfinity.com
•  Tesla.com
(c) Elephant Scale 2015

More Related Content

What's hot (20)

PDF
Fighting Cybercrime: A Joint Task Force of Real-Time Data and Human Analytics...
Spark Summit
 
PDF
Spark Summit East 2015 Keynote -- Databricks CEO Ion Stoica
Databricks
 
PPTX
Data Science lifecycle with Apache Zeppelin and Spark by Moonsoo Lee
Spark Summit
 
PPTX
From SQL to NoSQL - StampedeCon 2015
StampedeCon
 
PPTX
Implementing the Lambda Architecture efficiently with Apache Spark
DataWorks Summit
 
PDF
MaaS (Model as a Service): Modern Streaming Data Science with Apache Metron (...
DataWorks Summit
 
PDF
Real-Time Health Score Application using Apache Spark on Kubernetes
Databricks
 
PDF
Stream Processing as Game Changer for Big Data and Internet of Things by Kai ...
Big Data Spain
 
PDF
Building Reliable Data Lakes at Scale with Delta Lake
Databricks
 
PDF
Streaming Analytics for Financial Enterprises
Databricks
 
PPTX
How Spark Enables the Internet of Things: Efficient Integration of Multiple ...
sparktc
 
PDF
Smack Stack and Beyond—Building Fast Data Pipelines with Jorg Schad
Spark Summit
 
PDF
Apache Druid Auto Scale-out/in for Streaming Data Ingestion on Kubernetes
DataWorks Summit
 
PPTX
Automatski - RSA-2048 Cryptography Cracked using Shor's Algorithm on a Quantu...
Aditya Yadav
 
PDF
Going Real-Time: Creating Frequently-Updating Datasets for Personalization: S...
Spark Summit
 
PDF
Analytics at the Real-Time Speed of Business: Spark Summit East talk by Manis...
Spark Summit
 
PPTX
Apache Spark in Scientific Applciations
Dr. Mirko Kämpf
 
PDF
Virdata: lessons learned from the Internet of Things and M2M Cloud Services @...
Nathan Bijnens
 
PPTX
Self-Service Analytics on Hadoop: Lessons Learned
DataWorks Summit/Hadoop Summit
 
PPTX
Realtime streaming architecture in INFINARIO
Jozo Kovac
 
Fighting Cybercrime: A Joint Task Force of Real-Time Data and Human Analytics...
Spark Summit
 
Spark Summit East 2015 Keynote -- Databricks CEO Ion Stoica
Databricks
 
Data Science lifecycle with Apache Zeppelin and Spark by Moonsoo Lee
Spark Summit
 
From SQL to NoSQL - StampedeCon 2015
StampedeCon
 
Implementing the Lambda Architecture efficiently with Apache Spark
DataWorks Summit
 
MaaS (Model as a Service): Modern Streaming Data Science with Apache Metron (...
DataWorks Summit
 
Real-Time Health Score Application using Apache Spark on Kubernetes
Databricks
 
Stream Processing as Game Changer for Big Data and Internet of Things by Kai ...
Big Data Spain
 
Building Reliable Data Lakes at Scale with Delta Lake
Databricks
 
Streaming Analytics for Financial Enterprises
Databricks
 
How Spark Enables the Internet of Things: Efficient Integration of Multiple ...
sparktc
 
Smack Stack and Beyond—Building Fast Data Pipelines with Jorg Schad
Spark Summit
 
Apache Druid Auto Scale-out/in for Streaming Data Ingestion on Kubernetes
DataWorks Summit
 
Automatski - RSA-2048 Cryptography Cracked using Shor's Algorithm on a Quantu...
Aditya Yadav
 
Going Real-Time: Creating Frequently-Updating Datasets for Personalization: S...
Spark Summit
 
Analytics at the Real-Time Speed of Business: Spark Summit East talk by Manis...
Spark Summit
 
Apache Spark in Scientific Applciations
Dr. Mirko Kämpf
 
Virdata: lessons learned from the Internet of Things and M2M Cloud Services @...
Nathan Bijnens
 
Self-Service Analytics on Hadoop: Lessons Learned
DataWorks Summit/Hadoop Summit
 
Realtime streaming architecture in INFINARIO
Jozo Kovac
 

Similar to Reference architecture for Internet of Things (20)

PPTX
First Hive Meetup London 2012-07-10 - Tomas Cervenka - VisualDNA
Tomas Cervenka
 
PDF
Elastic Data Analytics Platform @Datadog
C4Media
 
PDF
Data Platform at Twitter: Enabling Real-time & Batch Analytics at Scale
Sriram Krishnan
 
PPTX
BIO IT 15 - Are Your Researchers Paying Too Much for Their Cloud-Based Data B...
Dirk Petersen
 
PPTX
Data Analysis on AWS
Paolo latella
 
PDF
Chirp 2010: Scaling Twitter
John Adams
 
PPTX
Big Data Analytics Strategy and Roadmap
Srinath Perera
 
PDF
Tugdual Grall - Real World Use Cases: Hadoop and NoSQL in Production
Codemotion
 
PDF
Data platform architecture
Sudheer Kondla
 
PPTX
4Developers 2018: Przetwarzanie Big Data w oparciu o architekturę Lambda na p...
PROIDEA
 
PDF
Data Science
Ahmet Bulut
 
PDF
AWS를 활용한 첫 빅데이터 프로젝트 시작하기(김일호)- AWS 웨비나 시리즈 2015
Amazon Web Services Korea
 
PPTX
The Background Noise of the Internet
Andrew Morris
 
PDF
AWS Community Nordics Virtual Meetup
Anahit Pogosova
 
PDF
Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...
Open Analytics
 
PDF
Open Data Summit Presentation by Joe Olsen
Christopher Whitaker
 
PDF
Fixing Twitter Improving The Performance And Scalability Of The Worlds Most ...
smallerror
 
PDF
Fixing Twitter Improving The Performance And Scalability Of The Worlds Most ...
xlight
 
PDF
Fixing twitter
Roger Xia
 
PDF
Fixing_Twitter
liujianrong
 
First Hive Meetup London 2012-07-10 - Tomas Cervenka - VisualDNA
Tomas Cervenka
 
Elastic Data Analytics Platform @Datadog
C4Media
 
Data Platform at Twitter: Enabling Real-time & Batch Analytics at Scale
Sriram Krishnan
 
BIO IT 15 - Are Your Researchers Paying Too Much for Their Cloud-Based Data B...
Dirk Petersen
 
Data Analysis on AWS
Paolo latella
 
Chirp 2010: Scaling Twitter
John Adams
 
Big Data Analytics Strategy and Roadmap
Srinath Perera
 
Tugdual Grall - Real World Use Cases: Hadoop and NoSQL in Production
Codemotion
 
Data platform architecture
Sudheer Kondla
 
4Developers 2018: Przetwarzanie Big Data w oparciu o architekturę Lambda na p...
PROIDEA
 
Data Science
Ahmet Bulut
 
AWS를 활용한 첫 빅데이터 프로젝트 시작하기(김일호)- AWS 웨비나 시리즈 2015
Amazon Web Services Korea
 
The Background Noise of the Internet
Andrew Morris
 
AWS Community Nordics Virtual Meetup
Anahit Pogosova
 
Social Media, Cloud Computing, Machine Learning, Open Source, and Big Data An...
Open Analytics
 
Open Data Summit Presentation by Joe Olsen
Christopher Whitaker
 
Fixing Twitter Improving The Performance And Scalability Of The Worlds Most ...
smallerror
 
Fixing Twitter Improving The Performance And Scalability Of The Worlds Most ...
xlight
 
Fixing twitter
Roger Xia
 
Fixing_Twitter
liujianrong
 
Ad

More from Sujee Maniyam (8)

PDF
Hadoop to spark-v2
Sujee Maniyam
 
PDF
Building secure NoSQL applications nosqlnow_conf_2014
Sujee Maniyam
 
PDF
Hadoop2 new and noteworthy SNIA conf
Sujee Maniyam
 
PDF
Launching your career in Big Data
Sujee Maniyam
 
PDF
Hadoop security landscape
Sujee Maniyam
 
PDF
Spark Intro @ analytics big data summit
Sujee Maniyam
 
PPTX
Cost effective BigData Processing on Amazon EC2
Sujee Maniyam
 
PPTX
Iphone client-server app with Rails backend (v3)
Sujee Maniyam
 
Hadoop to spark-v2
Sujee Maniyam
 
Building secure NoSQL applications nosqlnow_conf_2014
Sujee Maniyam
 
Hadoop2 new and noteworthy SNIA conf
Sujee Maniyam
 
Launching your career in Big Data
Sujee Maniyam
 
Hadoop security landscape
Sujee Maniyam
 
Spark Intro @ analytics big data summit
Sujee Maniyam
 
Cost effective BigData Processing on Amazon EC2
Sujee Maniyam
 
Iphone client-server app with Rails backend (v3)
Sujee Maniyam
 
Ad

Recently uploaded (20)

PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
Biography of Daniel Podor.pdf
Daniel Podor
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
Biography of Daniel Podor.pdf
Daniel Podor
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 

Reference architecture for Internet of Things

  • 1. A REFERENCE ARCHITECTURE FOR INTERNET OF THINGS SUJEE MANIYAM FOUNDER / PRINCIPAL @ ELEPHANTSCALE [email protected] (c) Elephant Scale 2015
  • 2. HI, I’M SUJEE MANIYAM •  Founder / Principal @ ElephantScale •  Consulting & Training in Big Data •  Training in Spark / Hadoop / NoSQL / Data Science •  Author •  “Hadoop illuminated” open source book •  “HBase Design Patterns •  Open Source contributor: github.com/sujee •  [email protected] •  http://sujee.net (c) Elephant Scale 2015 Spark Training available!
  • 3. INTERNET OF THINGS – A REALITY (c) Elephant Scale 2015
  • 5. DATA VOLUME ? A NAPKIN CALCULATION Say we have •  Million sensors •  Each sensor reports every minute •  data size 1KB This will result in : •  1.44 Billions events / day ! •  1.44 TB / day !! (c) Elephant Scale 2015
  • 6. SENSOR DATA WORKSHEET IoT Temperature Sensor Projection variables description sensors 1M 1.00E+06 1 million signal frequency every min / 60 secs 60 secs event size 1KB 1000 bytes events per day per sensor 1440 total events per day 1.44E+09 1440$$millions1.44$$billion total events / sec 1.67E+04 16,666.67$$ total data size per day 1.44E+12 1440$$$GB 1.44$$TB (c) Elephant Scale 2015
  • 7. SENSOR DATA : TEXAS UTILITIES SMART METER DATA Texas Smart Meter Projections variables description sensors 10 million customers 1.00E+07 10 million signal frequency every 15 mins 900 secs event size 1.4 K 1400 bytes events per day per sensor 96 total events per day 9.60E+08 960$$millions 0.96$$billion total events / sec 1.11E+04 11,111.11$$ total data size per day 1.34E+12 1344$$$GB 1.344$$TB (c) Elephant Scale 2015
  • 9. DATA VELOCITY Say we have •  Million sensors •  Each sensor reports every minute •  data size 1KB è •  Millions events / minute •  ~ 17,000 events / sec (c) Elephant Scale 2015
  • 10. DATA PROCESSING SPEED •  Need (near) real time processing most of the time •  E.g. Need to alert if temperature suddenly spikes temp Time Alert (c) Elephant Scale 2015
  • 11. CHALLENGE = BIG DATA + REAL TIME •  Don’t loose events ! •  Any event could be important •  Most events are mundane (e.g. temperature stays between 68’F – 72’ F) •  Process them in near real time •  Store the events for a long time •  Audit •  Diagnose •  Support various queries •  Real time (what is the latest temperature for sensor id 123?) •  Aggregate (what is the avg. temp in zipcode 12345) (c) Elephant Scale 2015
  • 12. HIGH LEVEL ARCHITECTURE (c) Elephant Scale 2015
  • 13. NEXT : (1) CAPTURE (c) Elephant Scale 2015
  • 14. (1) CAPTURE REQUIREMENTS Requirements: •  Capture events coming at high speed •  Tens of thousands events / sec (some times millions / sec) •  Don’t loose events •  Tolerate hardware / software failure •  Tolerate intermittent connectivity issues •  Scale ‘easily’ (c) Elephant Scale 2015
  • 15. (1) CAPTURE CHOICES •  MQ (RabbitMQ ..etc) •  Good adoption in enterprises / durable •  FluentD •  Data collector for various sources •  Flume •  Part of Hadoop eco system •  Good for collecting logs from many sources •  AWS Kinesis •  Queue system in Amazon Cloud •  Kafka •  Distributed queue (c) Elephant Scale 2015
  • 16. (1) CAPTURE MEET KAFKA •  Apache Kafka is a distributed messaging system •  Came out of LinkedIn… open sourced in 2011 •  Built to tolerate hardware / software / network failures •  Built for high throughput and scale •  LinkedIn : 220 Billion messages / day •  At peak : 3+ million messages / day (c) Elephant Scale 2015
  • 17. (1) CAPTURE KAFKA ARCHITECTURE •  Publisher - subscriber / producer – consumer model (c) Elephant Scale 2015
  • 18. (1) CAPTURE KAFKA ARCHITECTURE •  Producers write data to brokers •  Consumers read data from brokers •  All of this is distributed / parallel •  Failure tolerant •  Data is stored as topics •  “sensor_data” •  “alerts” •  “emails” (c) Elephant Scale 2015
  • 19. (1) CAPTURE KAFKA USERS •  Linked In •  Track user activities •  Sending emails •  Netflix •  Real time monitoring •  Spotify •  Ship logs to hadoop •  Uber… AirBnB…. (c) Elephant Scale 2015
  • 20. (1) CAPTURE ARCHITECTURE WITH KAFKA (c) Elephant Scale 2015
  • 21. NEXT : (2) PROCESSING (c) Elephant Scale 2015
  • 22. (2) PROCESSING REQUIREMENTS •  Process events in real time or near real time •  High velocity •  Tens of thousands à millions of events / sec •  Guaranteed processing •  Process an event at-least-once •  Exactly-once (harder to achieve) •  Failure tolerant •  Scale ‘easily’ (c) Elephant Scale 2015
  • 23. (2) PROCESSING CHOICES •  Storm •  Process streams •  Events based •  Came out of twitter •  Apache Samza •  Stream processing framework based on Kafka + Hadoop YARN •  Apache NiFi •  Data flow •  New project / incubating •  Spark streaming (c) Elephant Scale 2015
  • 24. (2) PROCESSING MEET SPARK •  Spark is the new darling of ‘Big Data’ world •  Lot’s of activity and interest •  Fast and Expressive Cluster Compute Engine •  “First Big Data platform to integrate batch, streaming and interactive computations in a unified framework” – stratio.com Hadoop Spark (c) Elephant Scale 2015
  • 25. (2) PROCESSING SPARK ECO-SYSTEM (c) Elephant Scale 2015 Spark Core Spark SQL Spark Streaming ML lib Schema / sql Real Time Machine Learning Stand alone YARN MESOS Cluster managers GraphX Graph processing
  • 26. (2) PROCESSING SPARK DATA SOURCE ABSTRACTION Spark (compute engine) HDFS Amazon S3 Cassandra ??? RDD Hadoop RDD Cassandra RDD (c) Elephant Scale 2015
  • 27. (2) PROCESSING SPARK : ‘UNIFIED’ STACK Spark supports multiple programming models •  Map reduce style batch processing •  Streaming / real time processing •  Querying via SQL •  Machine learning All modules are tightly integrated •  Facilitates rich applications Spark can be only stack you need ! (c) Elephant Scale 2015 Image: buymeposters.com
  • 29. (2) PROCESSING SPARK STREAMING •  Provides ‘high level’ operations in time windows •  E.g. ‘calculate X for the past 10 seconds’ •  Good adoption (c) Elephant Scale 2015
  • 30. (2) PROCESSING ARCHITECTURE WITH SPARK STREAMING (c) Elephant Scale 2015
  • 31. NEXT : STORAGE (c) Elephant Scale 2015
  • 32. (3) STORAGE REQUIREMENTS •  Handle ‘Big Data’ ( 1 TB / day !) •  Traditional storages are not effective (or too expensive) •  Need two types of storage 1.  ‘forever’ storage •  Store multi terabytes of data for a long periods •  Support Batch queries 2.  ‘fast / real-time lookup’ storage •  Query in real time (milliseconds) “what is the latest reading for sensor-123 ?” •  Store latest / new data (e.g. last 3 months) •  Flexible schema for semi-structured data •  Both need to scale (c) Elephant Scale 2015
  • 34. (3) STORAGE CHOICES •  ‘forever’ storage •  Scalable distributed file systems •  Hadoop ! (HDFS actually) •  ‘real time store’ •  Traditional RDBMS won’t work •  Don’t scale well (or too expensive) •  Rigid schema layout •  NoSQL ! (c) Elephant Scale 2015
  • 35. (3) STORAGE HDFS (IN 20 SECS) •  Distributed file system •  Runs on commodity servers •  à high ROI •  Can keep ticking even when nodes go down •  à fault tolerant •  Replicates data to prevent data loss in case of node failures •  à built in backup J •  Scales to Peta bytes (horizontal scalability) •  Proven in the field (c) Elephant Scale 2015
  • 36. (3) STORAGE HDFS ARCHITECTURE (c) Elephant Scale 2015
  • 37. (3) STORAGE COST OF BIG DATA Source : hortonworks (c) Elephant Scale 2015
  • 38. (3) STORAGE HDFS •  Can handle big data •  Scales easily •  Cost effective •  “Source of Truth” •  Files are immutable within HDFS (new data is ‘appended’ ) •  Audit friendly (c) Elephant Scale 2015
  • 39. (3) STORAGE CAPACITY PLANNING (HADOOP) Variables (tweak these) description value units Average daily ingest 1000 GB raw data node storage eg. 12 disks x 3TB 36 TB replication default 3 3 space allocated for HDFS HDFS 75% + Mapreduce 25% 75.00% growth per month (not calculated) 0 Calculation effective data storage per node 27 TB growth 1 month 6 month 1 yr 2 yr data size (TB) 90 540 1,080 2,160 # data nodes 3.333333333 20 40 80 (c) Elephant Scale 2015
  • 40. (3) STORAGE (REAL TIME) CHOICES FOR NOSQL •  Too many ! J •  HBase •  Part of Hadoop eco system •  Uses HDFS for storage •  Provides consistent view of data •  Cassandra •  Popular NoSQL store •  No Single Point of Failure (SPOF) – ring architecture •  No dependency on Hadoop •  Accumulo •  Came out of NSA ! •  Uses HDFS for storage •  Provides very good security (naturally !) (c) Elephant Scale 2015
  • 41. (3) STORAGE CAP THEOREM (c) Elephant Scale 2015
  • 42. (3) STORAGE ARCHITECTURE SO FAR (c) Elephant Scale 2015
  • 43. NEXT : QUERY (c) Elephant Scale 2015
  • 44. (3) QUERY REQUIREMENTS •  Real Time queries •  “what is the latest reading for the sensor id = 123” •  Useful for building applications / dashboards •  Latency : milli-seconds •  Batch / Aggregate queries •  “What is the average temperature in zip code = 12345” ? •  May need to go through large data points •  Latency : ‘batch’ (minutes / hours) (c) Elephant Scale 2015
  • 45. (3) QUERY SOLUTIONS •  Batch queries •  Query data in HDFS (and or NoSQL) •  Hadoop mapreduce (Pig / Hive) •  Spark batch analytics •  Real time queries •  Queries to go NoSQL store HDFS NoSQL Real time queries Batch queries (c) Elephant Scale 2015
  • 49. LAMBDA ARCHITECTURE EXPLAINED 1.  All new data is sent to both batch layer and speed layer 2.  Batch layer •  Holds master data set (immutable , append-only) •  Answers batch queries 3.  Serving layer •  updates batch views so they can be queried adhoc 4.  Speed Layer •  Handles new data •  Facilitates fast / real-time queries 5.  Query layer •  Answers queries using batch & real-time views (c) Elephant Scale 2015
  • 51. OUR ARCHITECTURE •  Each component is scalable •  Each component is fault tolerant •  Incorporates best practices •  All open source ! (c) Elephant Scale 2015
  • 52. … AND ONE MORE THING… •  Security ! (c) Elephant Scale 2015 Source : businessinsider.com
  • 53. HOW EVER… (c) Elephant Scale 2015 At scale nothing works as advertised !
  • 54. GOOD NEWS ! •  We are building an open source, reference data platform for IoT / connected devices! •  Yes, open source ! J •  ElephantScale is a strong believer in open source •  “hadoop illuminated” – open source Hadoop book •  Github.com/elephantscale •  Best practices •  Bringing together lots of expertise in Big Data systems •  Register your interest http://elephantscale.com/iotx/ (c) Elephant Scale 2015
  • 55. GOALS FOR IOTX http://elephantscale.com/iotx/ •  Use open-source proven components •  Capture : •  Kafka •  Kinesis (AWS) •  Processing : Spark Streaming •  Batch storage : Hadoop / HDFS •  Real Time Store : support multiple data stores •  Cassandra •  Hbase •  Accumulo •  ??? (c) Elephant Scale 2015
  • 56. GOALS FOR IOTX… http://elephantscale.com/iotx/ •  Query templates using •  Spark •  Hadoop Map Reduce (Pig / Hive) •  Incorporate third party libraries for •  Outlier detection (temperature is outside norms) •  Trend detection (stock price is trending up) •  Alerts (fire !) •  Monitoring & Metrics (key !!) •  What’s going in the system? •  Host / system level (cpu / network ..etc) – easier •  application level (e.g. find slow queries) – harder •  Incorporate third party libraries (c) Elephant Scale 2015
  • 57. THANKS AND QUESTIONS? “A Reference Architecture for Internet of Things (IoT)” Sujee Maniyam Founder / Principal @ ElephantScale Expert Consulting + Training in Big Data technologies [email protected] Elephantscale.com Project sign up page : http://elephantscale.com/iotx/ (c) Elephant Scale 2015
  • 58. IMAGE CREDITS •  www.engadget.com •  Xfinity.com •  Tesla.com (c) Elephant Scale 2015