© 2016 IBM Corporation
IBM Streams IoT Integration
IBM Streams Version 4.2
Susan L. Cline, Streams UI Developer,
susancline@us.ibm.com
Dan Debrunner, Streams Architect
debrunne@us.ibm.com
2 © 2016 IBM Corporation
Important Disclaimer
THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL
PURPOSES ONLY.
WHILE EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE
INFORMATION CONTAINED IN THIS PRESENTATION, IT IS PROVIDED “AS IS”, WITHOUT WARRANTY
OF ANY KIND, EXPRESS OR IMPLIED.
IN ADDITION, THIS INFORMATION IS BASED ON IBM’S CURRENT PRODUCT PLANS AND STRATEGY,
WHICH ARE SUBJECT TO CHANGE BY IBM WITHOUT NOTICE.
IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR
OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER DOCUMENTATION.
NOTHING CONTAINED IN THIS PRESENTATION IS INTENDED TO, OR SHALL HAVE THE EFFECT OF:
• CREATING ANY WARRANTY OR REPRESENTATION FROM IBM (OR ITS AFFILIATES OR ITS OR
THEIR SUPPLIERS AND/OR LICENSORS); OR
• ALTERING THE TERMS AND CONDITIONS OF THE APPLICABLE LICENSE AGREEMENT
GOVERNING THE USE OF IBM SOFTWARE.
IBM’s statements regarding its plans, directions, and intent are subject to change or
withdrawal without notice at IBM’s sole discretion. Information regarding potential
future products is intended to outline our general product direction and it should not
be relied on in making a purchasing decision. The information mentioned regarding
potential future products is not a commitment, promise, or legal obligation to deliver
any material, code or functionality. Information about potential future products may
not be incorporated into any contract. The development, release, and timing of any
future features or functionality described for our products remains at our sole
discretion.
THIS INFORMATION IS BASED ON IBM’S CURRENT PRODUCT PLANS AND STRATEGY, WHICH ARE SUBJECT TO CHANGE BY IBM WITHOUT NOTICE.
IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER DOCUMENTATION.
3 © 2016 IBM Corporation
Agenda
 Overview
– Apache Edgent, IBM Watson IoT Platform & IBM Streams
 Use Case: How does this help Streams developers and users?
 Demo
 Streams Console + Edgent device management functionality
 Questions?
4 © 2016 IBM Corporation
 Thousands to million of edge devices being analyzed by IBM
Streams
IBM Watson IoT Platform IBM Streams
Streaming Analytics
Apache Edgent on Edge
Devices and Gateways
High-Level Overview
5 © 2016 IBM Corporation
Apache Edgent
 Lightweight streaming analytics runtime designed to execute at the
edge of the network – “Internet of Things”
– Vehicles: engine monitoring, location analytics, …
– Buildings: Energy efficiency, …
– Smartphones: location analytics, fitness, …
– …
 Reduce data volume sent to central analytics
– Send information rich data only when relevant
 Run continuous analytics locally (on the device)
– Continue to provide functionality even when disconnected
Apache Edgent is an effort undergoing Incubation at The Apache Software Foundation (ASF), sponsored by the Incubator. Incubation is
required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process
have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the
completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
6 © 2016 IBM Corporation
IBM Watson IoT Platform
 Bluemix Cloud Service for Internet of Things
 Device connectivity using MQTT
– Supporting IoT scale, millions of devices.
 Device model
– Devices send events to IoT Platform to be subscribed to by central systems
– Devices receive commands from central systems through IoT Platform
 Device Management
– Device registration & control
 Apache Edgent provides connectors to IoT Platform
7 © 2016 IBM Corporation
IBM Streams IoT Integration
 com.ibm.streamsx.iot toolkit
– Enables analytics against data from IoT devices
– Adds device model for IBM Streams applications
• SPL
• Java Applications
– Simplifies connectivity to IBM Watson IoT Platform
• Edge devices can be running Apache Edgent but not required
 IoT Device manager
– Pluggable module to allow IoT device & application management from IBM
Streams
– IBM Watson IoT Platform device manager
– Open API for third-party device
– IBM Streams JMX and streamtool APIs
– IBM Streams Console integration
8 © 2016 IBM Corporation
Use Case
 Streams Applications, Streams Console + IoT Integration:
– Streams Applications: Monitor and analyze the data sent from devices
running Apache Edgent applications
– Streams Console: Ability to create and store device manager information and
send commands to edge devices
– Example: Temperature and speed monitoring devices running Edgent
applications send out of range data to Watson IoT that Streams applications
receive. These applications provide additional analysis on data. The Streams
application or Streams console sends commands to the device to alter behavior
of the device or request additional event information to perform additional
analysis.
– Result: The ability to combine analysis of edge device events with
analytics from the enterprise for better decision making
9 © 2016 IBM Corporation
Demo
 Streams console running two Streams applications using the Watson IoT
toolkit
 Show how to create a device manager configuration to Watson IoT
 Show how to send commands to devices
 View the commands sent to the devices in the Streams Console
 See the events sent from the devices to IoT
10 © 2016 IBM Corporation
Streams Console – Edgent Application and Device Mgr
 Edgent Application and Device Management available in Mgmt and all
Application Dashboards (Instance, Job and Operator)
 Ability to create, edit, and remove configurations
 Save device manager configurations as property files
 Generic configurations can be used to store other application connection
information – i.e, JDBC or RabbitMQ
 Drill down to see device types associated with device manager configuration
and number of devices per device type
 Issue commands on specific device types
 Show, filter and clear command history, edit commands, use command
templates
11 © 2016 IBM Corporation
Additional Resources
 developerWorks StreamsDev
 Apache Edgent Documentation
 Apache Edgent GitHub
 Watson IoT Platform
12 © 2016 IBM Corporation
Questions?

IBM Streams IoT Integration

  • 1.
    © 2016 IBMCorporation IBM Streams IoT Integration IBM Streams Version 4.2 Susan L. Cline, Streams UI Developer, susancline@us.ibm.com Dan Debrunner, Streams Architect debrunne@us.ibm.com
  • 2.
    2 © 2016IBM Corporation Important Disclaimer THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY. WHILE EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION CONTAINED IN THIS PRESENTATION, IT IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. IN ADDITION, THIS INFORMATION IS BASED ON IBM’S CURRENT PRODUCT PLANS AND STRATEGY, WHICH ARE SUBJECT TO CHANGE BY IBM WITHOUT NOTICE. IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER DOCUMENTATION. NOTHING CONTAINED IN THIS PRESENTATION IS INTENDED TO, OR SHALL HAVE THE EFFECT OF: • CREATING ANY WARRANTY OR REPRESENTATION FROM IBM (OR ITS AFFILIATES OR ITS OR THEIR SUPPLIERS AND/OR LICENSORS); OR • ALTERING THE TERMS AND CONDITIONS OF THE APPLICABLE LICENSE AGREEMENT GOVERNING THE USE OF IBM SOFTWARE. IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. THIS INFORMATION IS BASED ON IBM’S CURRENT PRODUCT PLANS AND STRATEGY, WHICH ARE SUBJECT TO CHANGE BY IBM WITHOUT NOTICE. IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER DOCUMENTATION.
  • 3.
    3 © 2016IBM Corporation Agenda  Overview – Apache Edgent, IBM Watson IoT Platform & IBM Streams  Use Case: How does this help Streams developers and users?  Demo  Streams Console + Edgent device management functionality  Questions?
  • 4.
    4 © 2016IBM Corporation  Thousands to million of edge devices being analyzed by IBM Streams IBM Watson IoT Platform IBM Streams Streaming Analytics Apache Edgent on Edge Devices and Gateways High-Level Overview
  • 5.
    5 © 2016IBM Corporation Apache Edgent  Lightweight streaming analytics runtime designed to execute at the edge of the network – “Internet of Things” – Vehicles: engine monitoring, location analytics, … – Buildings: Energy efficiency, … – Smartphones: location analytics, fitness, … – …  Reduce data volume sent to central analytics – Send information rich data only when relevant  Run continuous analytics locally (on the device) – Continue to provide functionality even when disconnected Apache Edgent is an effort undergoing Incubation at The Apache Software Foundation (ASF), sponsored by the Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
  • 6.
    6 © 2016IBM Corporation IBM Watson IoT Platform  Bluemix Cloud Service for Internet of Things  Device connectivity using MQTT – Supporting IoT scale, millions of devices.  Device model – Devices send events to IoT Platform to be subscribed to by central systems – Devices receive commands from central systems through IoT Platform  Device Management – Device registration & control  Apache Edgent provides connectors to IoT Platform
  • 7.
    7 © 2016IBM Corporation IBM Streams IoT Integration  com.ibm.streamsx.iot toolkit – Enables analytics against data from IoT devices – Adds device model for IBM Streams applications • SPL • Java Applications – Simplifies connectivity to IBM Watson IoT Platform • Edge devices can be running Apache Edgent but not required  IoT Device manager – Pluggable module to allow IoT device & application management from IBM Streams – IBM Watson IoT Platform device manager – Open API for third-party device – IBM Streams JMX and streamtool APIs – IBM Streams Console integration
  • 8.
    8 © 2016IBM Corporation Use Case  Streams Applications, Streams Console + IoT Integration: – Streams Applications: Monitor and analyze the data sent from devices running Apache Edgent applications – Streams Console: Ability to create and store device manager information and send commands to edge devices – Example: Temperature and speed monitoring devices running Edgent applications send out of range data to Watson IoT that Streams applications receive. These applications provide additional analysis on data. The Streams application or Streams console sends commands to the device to alter behavior of the device or request additional event information to perform additional analysis. – Result: The ability to combine analysis of edge device events with analytics from the enterprise for better decision making
  • 9.
    9 © 2016IBM Corporation Demo  Streams console running two Streams applications using the Watson IoT toolkit  Show how to create a device manager configuration to Watson IoT  Show how to send commands to devices  View the commands sent to the devices in the Streams Console  See the events sent from the devices to IoT
  • 10.
    10 © 2016IBM Corporation Streams Console – Edgent Application and Device Mgr  Edgent Application and Device Management available in Mgmt and all Application Dashboards (Instance, Job and Operator)  Ability to create, edit, and remove configurations  Save device manager configurations as property files  Generic configurations can be used to store other application connection information – i.e, JDBC or RabbitMQ  Drill down to see device types associated with device manager configuration and number of devices per device type  Issue commands on specific device types  Show, filter and clear command history, edit commands, use command templates
  • 11.
    11 © 2016IBM Corporation Additional Resources  developerWorks StreamsDev  Apache Edgent Documentation  Apache Edgent GitHub  Watson IoT Platform
  • 12.
    12 © 2016IBM Corporation Questions?