5 billion people vs 50 billion devices connected to the Internet by 2025 - How can we build application to handle this explosive growth in Internet of Things using Cloud Foundry, Bluemix and Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
1. Build Scalable Internet of Things Applications using Cloud
Foundry, Bluemix & Cloudant!
Meetup.com/Bluemix Meetup.com/CloudFoundry
2. Internet of Things , Cloud Foundry, Bluemix and Cloudant Meetup Agenda!
Meetup.com/Bluemix Meetup.com/CloudFoundry!
Nov 18th, Bluemix Garage, 543 Howard Street, 4th Floor, San Francisco, CA!
!
Crap. Our IoT Kitchen is Broken !
Talk by Renat Khasanshyn - CEO of Altoros Systems – Slideshare link for Renat`s talk coming soon and will be
added here!
!
Build scalable apps using IBM Internet of Things Foundation Cloud and
Bluemix!
Animesh Singh!
!
Collect Data and Send Commands to Sensor Devices like Arduino and
Raspberry Pi!
Syed Zaidi and Nicholas Vargas!
!
Store and Analyze IoT Data in Cloudant!
Dwight Ford!
Meetup.com/Bluemix Meetup.com/CloudFoundry
3. Build IoT apps using IBM Internet of Things Cloud & Bluemix!
Animesh Singh!
9 billion devices
around the world are
currently connected
to the Internet
The number is
expected to
increase within the
next decade,
ranging from 50
Billion to reaching
1 trillion
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
4. 1.8Bn New Smartphones !
4Q 2013, Dept store drives
32% of sales online!
in 2013!
The world is changing…!
Tablets outnumbered PC
sales in 4Q 2013!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
5. Forecast 2020 View!
212 billion installed things!
50 billion autonomously connected
things!
Public Sector, Distribution & Services,
Manufacturing & Resources, and
Consumers lead segment growth rates!
Approximately 3 million
petabytes of embedded
systems data (excludes streaming,
surveillance-type data!
$8.9 trillion of business value!
Source: IDC, December 2013 !
Meetup.com/Bluemix Meetup.com/CloudFoundry
6. New Customer Interaction Points for the 21st Century!
Devices & Mobiles will be the touch points that drive
new revenue streams
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
7. The Internet of Things connects the world around us…!
Smart Scales:!
Track health in
outpatients!
Connected car:!
Tracks location, status
of car parts!
Mobile:!
Mobile payments!
Container Tracking:!
End to end tracking,
prevent tampering !
Heating and Air
Conditioning:!
Maximum efficiency using
weather predictions and
remote control !
Smart Deliveries:!
Track parcel !
Monitor and open garage
door remotely on arrival!
Building Security:!
Facial recognition,
remote notification!
Smart Meter:!
Track and control
usage!
HealthCare:!
Monitor patients at
home!
Vending Machine:!
Stock reporting,
temperature, shelf life!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
8. IBM Bluemix!
Register now! bluemix.net!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
9. IBM Bluemix (Powered by Cloud Foundry)!
§ IBM initiative to develop a
Platform as a Services offering !
§ IBM and partner cloud
services!
§ Integrated DevOps with both
Browser and Eclipse-based
tools!
Run8mes
&
Frameworks
Services
Register now! bluemix.net!
Lifecycle
Management
(JazzHub)
Check
In
Code
Check
In
Code
Create
&
Manage
Services
Applica8on
Composi8on
Environment
Applica8on
Run8me
Web
IDE
(Eclipse
Orion)
Test/Run
Explore
Services
node
java
WebSphere
IBM
Bluemix ™
Eclipse
IDE
Test/Run
Explore
Services
ruby
Worklight
Liberty
Middleware
Applica8on
Opera8 Data
onal
Mobile
External
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
10. Run Your Apps!
The developer can chose any language runtime or bring
their own. Just upload your code and go.!
Services!
A catalog of open source, IBM and third party APIs
services allow a developer to stitch together an
application in minutes.!
DevOps!
Development, monitoring, deployment and logging
tools allow the developer to run the entire
application!
Cloud Integration!
Build hybrid environments. Connect to on-premises
systems of record plus other public and private clouds.
Expose your own APIs to your developers.!
Extend SaaS Apps!
Drop in SaaS App SDKs and extend to new use cases
(e.g,. Mobile, Analytics, Web)!
A Platform as a Service !
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
11. IBM Internet of Things Foundation!
IBM® Internet of Things Foundation is a fully managed, cloud-hosted service that makes it simple to derive value from IoT devices. !
Manage!
Assemble!
Connect!
Real Time MQTT!
Collect!
Simple APIs!
Build!
REST!
internetofthings.ibmcloud.com
@AnimeshSingh!
bluemix.net!
Meetup.com/Bluemix Meetup.com/CloudFoundry
12. IBM Internet of Things Foundation allows you to easily compose IoT
solutions!
internetofthings.ibmcloud.com
Select from a growing list of device recipes!
Simply connect & “recognize” device types!
Visualize real-time data stream!
Visually define logic flows!
Mix with other services in Bluemix to create
apps!
!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
13. Device Recipes in IoT Foundation!
@AnimeshSingh!
internetofthings.ibmcloud.com
Meetup.com/Bluemix Meetup.com/CloudFoundry
14. Internet of Things is part of our Bluemix Platform!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
15. Bluemix Recipes in IoT Foundation!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
16. Node RED in Bluemix! A visual tool for wiring the Internet of Things!
Node-RED provides a browser-based editor that makes it easy to wire together flows that can be deployed to
the runtime in a single click.!
Node-RED in Bluemix!
16
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
17. IoT Foundation powered by IBM MessageSight!
• Extends IBM Messaging family with secure, easy to
deploy appliance-based messaging gateway!
• Optimized for massive scale Internet of Things and
Mobile use cases at edge of enterprise!
• Exploits hardware acceleration for high
performance!
• Can extend existing messaging infrastructure or be
used standalone!
Designed for
Things!
• Optimized gateway for Things and
Mobile devices!
• Efficient open protocol !
• Event-driven awareness!
• Open and industry agnostic!
• Fine-grained security policies!
Developer!
Friendly!
• Active dev community!
• Free dev virtual appliance!
• Simple yet powerful APIs !
• Simple messaging paradigm!
• 40+ MQTT client libraries!
Easy to
Deploy!
!
• Up and running < 30 minutes!
• Task oriented UI guides administrator
through first steps !
• Simple and scalable management
through policies!
Easy to
Integrate!
• JMS!
• WebSockets!
• MQ !
• Integration Bus!
• Worklight!
• InfoSphere Streams…!
Internet!
Scale!
• 13M non-persistent msg/sec!
• 400K persistent msg/sec!
• 1M concurrent connections!
• Predictable microsecond latency under
load!
• Highly available!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
18. IBM delivers connectivity across IoT deployment options!
As-a-service,
PAYG Public
Cloud
Dedicated
appliances in
datacenter
IoT
Foundation
IBM MessageSight
Powered by IBM
MessageSight
Virtual appliances,
Public or private cloud
deployed
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
19. Why messaging for mobile and IoT?!
HTTP revolutionized how we !
consume data!
• Simple request/response model!
• Data from known source!
• Available on any tablet, laptop, phone, PC!
• Slow and unreliable on mobile networks!
Mobile and IoT applications have !
additional challenges!
• Requires a real-time, event-driven model!
• Publishing information one-to-many!
• Listening for events as they happen!
• Sending small packets of data in huge volumes!
• Reliably pushing data over unreliable networks!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
20. MQTT – the protocol for Mobile and IoT messaging!
§ MQTT is a machine-to-machine (M2M) "Internet of
Things" connectivity and messaging protocol ideally
suited to mobile and M2M environments - designed
for constrained devices and low-bandwidth, high-latency
or unreliable networks!
§ It has an open specification (http://mqtt.org)!
ü There are over 40 different client implementations!
ü Standardization with OASIS accomplished a week
ago.!
§ High-quality, open-source implementations of clients!
ü Hosted at the Eclipse Paho project!
ü Build the clients yourself or use free ones from IBM !
or others!
§ MQTT is very lean and fast!
• Efficient format with minimal overhead!
• Client implementations are small and can run
on small devices!
!
§ Communication using messaging is much
more flexible than request/response!
• Bi-directional, asynchronous “push”
communication!
• Publish/subscribe decouples the senders of
information from the receivers!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
21. Internet of Things Demo One: Connected Car!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
22. IoT Demo One: Connected Car!
Applying models to predict, detect, optimize and anticipate!
Primary Event zone!
Sensors tracking real-time
location of cars!
Secondary
perimeter !
Overview of car
status!
Real-time alerts
personalized to each car!
Car that had entered and now left
danger zone!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
23. IoT Demo One: Connected Car!
Applying models to predict, detect, optimize and anticipate!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
24. IoT Demo Two: Sample IoT boilerplate in Bluemix with simulated sensor!
Node-RED in Bluemix!
@AnimeshSingh!
Meetup.com/Bluemix Meetup.com/CloudFoundry
27. IoT with Arduino and Raspberry Pi - How to store sensor-generated
data, and send commands
Syed Zaidi and Nicholas Vargas!
Meetup.com/Bluemix Meetup.com/CloudFoundry
29. IoT Demo Four: IoT application using Raspberry pi & node-red!
Meetup.com/Bluemix Meetup.com/CloudFoundry
30. IoT Demo Five: The Other Direction!
Sending data back to a device
l Not just about getting data
l Bidirectional network of “Things”
l Collect data – then act on it
Meetup.com/Bluemix Meetup.com/CloudFoundry
31. IoT Demo Five: The Other Direction!
Use case
l Critical hardware temperature alert
l When device reaches dangerous
temperature, supervisor should be alerted
l Physical world to digital world, back to
physical
l LED lights change color when temperature
crosses a threshold
Meetup.com/Bluemix Meetup.com/CloudFoundry
32. Store and Analyze IoT Data in Cloudant!
Dwight Ford!
Meetup.com/Bluemix Meetup.com/CloudFoundry
33. 33
Sync Any Device using JSON over HTTP!
JSO N Cloudan t
JSON JSON
JSON JSON
JSON
Meetup.com/Bluemix Meetup.com/CloudFoundry
34. The Cloudant Data Layer!
Best-of-Breed NoSQL Database and Clustering Technology
Managed 24x7x365 by DevOps Experts
Global Data Presence in 35+ Data Centers
34!
Meetup.com/Bluemix Meetup.com/CloudFoundry
35. Cloudant Overview!
• Operational Data Store
• NoSQL Document Database
• Simple and well-defined HTTP API
• Fully Integrated:
• Replication & Sync
• MapReduce for Real-time Analytics
• Full-Text Search
• GeoSpatial
• Multi-tenant and dedicated-tenant clusters
• Powered by Apache CouchDB, Dynamo Clustering, Lucene Search, and a whole lot more…
Meetup.com/Bluemix Meetup.com/CloudFoundry
36. Document Database Basics!
• Documents are stored in the popular JSON format with a flexible schema
• A database is a logical collection of documents, with single set of access
permissions
• Cluster can hold any number of databases
Meetup.com/Bluemix Meetup.com/CloudFoundry
37. Developing with Cloudant!
• Dashboard
• HTTP RESTful API
• Language Agnostic
• Compatible with open source
Apache CouchDB
• Cloudant and CouchDB-compatible
API Libraries
Meetup.com/Bluemix Meetup.com/CloudFoundry
38. Join the Bluemix App Challenge!!
http://appchallenge.mybluemix.net!
Meetup.com/Bluemix Meetup.com/CloudFoundry