IoT will be the next game changer. We’re entering a world, where Billions of devices will be able to play in role in higher level processes. There will be many more machines using our todays internet than humans will do. This is a summary of an Openworld session on Oracle IoT strategy.
IoT Definition from Wikipedia:
Equipping all objects in the world with minuscule identifying devices could be transformative of daily life. For instance, business may no longer run out of stock or generate waste products, as involved parties would know which products are required and consumed.One's ability to interact with objects could be altered remotely based on immediate or present needs, in accordance with existing end-user agreements.
Some major challenges have to be addressed:
- Complex value chain
- Lack of standardization to build, deploy & manage IoT applications
- No consistency in managing security of data and identity of devices
- Need to analyze Fast data in real time
- No integration platform to convert data into business automation
Oracle launched their Iot platform at Openworld 2013 with this focus:
- Standardize application development for devices, enterprise, web and mobile apps
- Analyze IoT data to achieve real-time visibility
- Integrate IoT data with enterprise applications & cloud infrastructure
- Secure data & identity across devices and enterprise data center
Oracle view of IoT platform:
· The Java language and runtime platform are popular in the embedded space due to portability across hardware platforms, Security, Remote Updates, and readily available developer community.
· Oracle Java Embedded Suite adds database, RESTful web services, Servlet facilities and Java EE technology to Oracle Java SE Embedded. This allows creation of Mobile & Web applications for the Gateway, as well as, REST based communication with the backend.
· Oracle Event Processing (OEP) for Java Embedded allows filtering & aggregation of Device Data at the Gateway e.g. OEP can send hourly average temperature in a warehouse to backend but start immediate notification for a “too hot” reading.
IoT Application Server & Device Communication
· Oracle WebLogic Server provides RASP infrastructure for running all Java based components of IoT platform – Device Communication, Device Event Processing, Device Integration and IoT Application.
· WebLogic provides out of the box support for HTTP/REST, JMS based Device Communication. For other Message Exchange protocols/formats custom implementation or partner adapters need to be used e.g. Eurotech, SeeControl.
· Oracle Exalogic provides scalability & performance not available on traditional platforms e.g. Oracle Event Processing can process 1Million Events/sec on one node of Exalogic.
Device Event Processing
· Applications dealing with large scale device events needing milli second response after complex processing (e.g. identifying a stolen car from city wide camera feed) use a Device Event Processing Module (Fast Data).
· OEP on Server complements Gateway OEP in doing complex processing using context data through Data Cartridges – Java, Spatial, JDBC, Hadoop, NoSQL. Runs In-Memory (no Disc I/O) using data cached in Coherence.
· OEP framework is developer friendly and allows extensible & configurable processing using CQL. Event Processing Output
o Filtering - Stream filtered for specific criteria e.g. Patient Temperature > 100F
o Correlation & Aggregation - Scrolling, time-based metrics e.g. Avg Temp.
o Pattern Matching - Notification of detected event patterns e.g. Temperature change occurs within 15 minute window of medicine intake.
· Oracle Service Bus connects, mediates, and manages interactions between Device Communication/Event Processing Modules & Business Services. Adds a virtualization & transformation layer.
· Designed for mission critical (Reliable Messaging), High Volume (Clustered Deployments, Message Throttling) environment. Built-in management (SLA Dashboard) and monitoring capabilities.
· Support many different transports – HTTP/REST, HTTP/SOAP, WS-I, JMS. Custom transport creation using SDK. Several Oracle & Partner Application Adaptors for out of the box connectivity to Business Applications (Oracle, SAP, Siebel etc.).
· Oracle BPM Suite for processes
o Visualize Device Data Real Time in BAM
o Create Business Rules around Data (If Then, Decision Tables, Industry Specific)
o Act (Human Assignment, Notification, Approval, Integrate with partner app) on Data with flexible process
· ADF/Webcenter for UI:
o Create Rich User Interaction with ADF & WebCenter
o Develop Mobile Applications via exposed RESTful interfaces to the platform and ADF Mobile
o Out of the box integration with Oracle Identity Management for Authentication & Authorization
· Oracle Identity Management provides a LDAP store for storing identities of low volume, high processing Devices like ECG Machines. Oracle NoSQL Database is a scalable high performance, reliable store for High Volume Devices like Sensors.
· Oracle Access Manager Mobile and Social provides Authentication for Devices. Oracle API gateway ensures Business Services are adequately protected from Devices while also providing Audit.
· Device software written in Java can be written once and deployed in all devices without physical access to the Devices. Oracle Partners like Hitachi CTA provide provisioning and software lifecycle management based on OSGi (Dynamic Module System for Java).