SlideShare una empresa de Scribd logo
1 de 26
Descargar para leer sin conexión
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Home Security System 
Java Embedded in Action 
Łukasz Romaszewski 
ISV Migration Consultant 
Oracle 
November 22, 2014
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Java in the Internet of Things 
One Language, One Platform, Runs Everywhere 
3 
Enterprise Data & Applications 
Cloud for Embedded Devices 
Meters 
Smart Appliances & electronics 
Personal Devices 
Med-Large Embedded / Multi- function Devices 
VoIP Comm 
Industrial controls / Network Appliances 
Management / Monitoring / Operations 
Sensors / Microcontrollers 
Connected Vehicles
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
The Spectrum of Java Embedded 
4 
Small Embedded 
Medium Embedded 
Large Embedded 
Platform Footprint 
Device CPU/ 
GPU/I-O 
50KB-1MB 
1MB-10MB 
10MB-100MB
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Java Embedded in Practice 
Example Devices 
5 
•ATMs 
•Parking Meters 
•POS Systems 
•Lottery/Gaming Systems 
•Multi Function Printers 
•Intelligent Power Module 
•Netbooks 
•Routers & Switches 
•Storage Appliances 
•Network Management Systems 
•Medical Imaging Systems 
•Radar Systems 
•Industrial PCs 
•Factory Automation Systems 
•Geo-Imaging Devices 
•Smart Meters 
•RFID Readers 
•Video Conferencing Systems 
•In-Flight Entertainment Systems 
•Video Streaming Systems 
•Electronic Voting Systems 
•Voice Messaging Systems 
•Security Systems
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Java Embedded Suite 
On-device Java Platform
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Introducing Oracle Java Embedded Suite 
7 
Enterprise Data & Applications 
Java Embedded Suite 
Embedded 
DB 
•Includes capabilities to support today’s intelligent devices 
•Java Embedded runtime plus full SQL DB and Web Server/Services
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Oracle Java Embedded Suite (JES) 
JES consist of three parts: 
•Java SE Embedded 
•Java Standard Edition for embedded devices 
•Java DB 
•Java SQL Database (Derby) 
•Glasfish Embedded 
•Subset of JEE Web Profile 
•Servlet container 
•RESTful web services 
8 
OS & Hardware 
Java SE Embedded 
Java DB 
(SQL Database) 
Glassfish 
(Web Server) 
Your applications
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
JES - Sample Deployment Architecture 
JES Deployment 
•JES acting as a concentrator (hub) of multiple edge devices 
•Collects and forwards the data and messages to the backend 
•Performs local analytics 
•Hosts web services and applications 
•Backend system gets aggregated and pre- processed data 
10
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Oracle Event Processing for Java Embedded 
On-device event processing
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Complex Event Processing (CEP) 
Complex Event Processing 
•Method of tracking and analyzing data combined from multiple streams to infer events or patterns that suggest more complicated circumstances 
•Goal is to identify business meaning of events (such as opportunities or threats) and respond to them as quickly as possible. 
12 
Event Patterns 
Event Stream 
Fine-grained simple events from sensors and edge devices 
Complex Events 
Machine module non-functional, power outage, device tampering, etc.
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Complex Event Processing (CEP) 
CEP event patterns 
•Filtering: 
New stream filtered for specific criteria, e.g. temperature > 200 F 
•Correlation & Aggregation: 
Scrolling, time-based window metrics, e.g. average heart pulse rate in the last 3 days 
•Pattern Matching: 
Notification of detected event patterns, e.g. machine events A, B and C occurred within 15 minute window 
•Geospatial, Predictive Modeling and beyond 
Immediate recognition of geographical movement patterns, apply historical business intelligence models using data mining algorithms 
13 
Event Patterns 
Event Stream 
Fine-grained simple events from sensors and edge devices 
Complex Events 
Machine module non-functional, power outage, device tampering, etc.
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Input Adapter 
Channel 
Input Adapter 
Channel 
Business Logic 
(CQL) 
Channel 
Channel 
Channel 
Output Adapter 
Output Adapter 
Oracle Event Processing Application 
DB 
Input adapters connect to data sources 
Channels help control the flow of data and can be tuned for optimal performance 
Databases, Coherence caches, Hadoop (HDFS) and NoSQL database can be referenced directly in CQL processors 
CQL processors contain filtering, correlation, aggregation and pattern matching business logic 
Output adapters send data and alerts to downstream systems and business processes 
Business Logic 
(CQL) 
Business Logic 
(CQL) 
Big Data 
Coherence 
14
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
High-Performance In-Memory Data Processing 
Input Adapter 
Data 
Input Adapter 
Data 
Channel 
Business Logic 
(CQL) 
Channel 
Data 
Data 
Analytics 
Channel 
Business Logic 
(CQL) 
Enrich 
Output Adapter 
Data 
Data 
Data 
Data 
Analytics: Continuously Sliding Windows of Streaming Data, Filtering, Correlations, Calculations, Aggregations, Pattern Matching, Missing Event Detection, Spatial Analysis, etc. 
Enrichment: Integrate with data from DB, Coherence, NoSQL, Hadoop etc. 
Oracle Event Processing 
15
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
OEP 
Oracle Event Processing: From Noise to Value 
Connecting the Internet-of-Things to Your Enterprise 
Distributed Intelligence 
•Filtering 
•Correlation 
•Aggregation 
•Pattern matching 
Devices / Gateways 
SOA 
Internet of Things 
SOA / Enterprise 
“Sea of data” 
Macro-event 
High-value 
Actionable 
In-context 
OEP 
embedded 
OEP 
• High Volume 
• Continuous Streaming 
• Sub-Millisecond Latency 
• Disparate Sources 
• Time-Window Processing 
• Pattern Matching 
• High Availability / Scalability 
• Unique Coherence Integration 
• Geospatial, Geo-fencing 
• Big Data & IoT Integration 
•Action! 
16
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Complex Event Processing vs „old school” database 
Inverted Database 
Data is ‘static’ 
Queries are ‘dynamic’ 
•Data (event) is ‘dynamic’ 
•Queries are ‘static’
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
OEP for Java Embedded Components Architecture 
OEP Architecture 
•OEP is a collection of OSGi bundles. 
•OEP supports dynamic deployment of OEP applications (also packaged as OSGi bundles). 
•Modular architecture simplifies customization of OEP for different environments 
•Core OEP programming model is uniform (Java, CQL) across all environments. 
18 
Modular Architecture based on OSGi 
OSGi Module Framework 
Module management, lifecycle & classloading 
Core service registry 
OEP Server Modules (OSGi bundles) 
CQL Engine 
Config & Admin 
Logging 
Adapters 
. . . 
OEP Applications (OSGi bundles) 
Application 1 
Application 2 
. . . 
Embedded JRE 
JavaDB 
Java Embedded Suite 
OEP Embedded
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Continuous Query Language (CQL) 
•CQL is based on standard SQL with extensions for streaming data 
–CQL queries support filtering, partitioning, aggregation, correlation (joins across streams), and pattern matching on streaming and relational data 
–Extends standard SQL by adding notion of Stream, operators for mapping between relations and streams, and extensions for pattern matching 
–Window operator (e.g. RANGE 1 MINUTE) transforms stream into a relation 
•Example: 
SELECT AVG(temperature) AS avgTemp, tempSensorId 
FROM temperatureInputStream[RANGE 1 MINUTE] 
GROUP BY tempSensorId 
19
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Demo 
Using JES + OEP + USB webcamera on Raspberry Pi to create smart home security system
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Home Surveillance System Concept 
Oracle Confidential – Internal/Restricted/Highly Restricted 
22 
Secure VPN 
Internet 
Data Center OEP + BAM + BPM 
Push 
House owner 
Thief 
USB 
web camera 
Raspberry Pi 
+ JES + OEP Embedded
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Home Surveillance System – Incident Processing 
Oracle Confidential – Internal/Restricted/Highly Restricted 
23 
Data Center OEP + BAM + BPM 
House owner 
Owner confirms the incident using MAF application 
Operator dispatches the incident to a brigade 
System generates a task for an operator 
The nearest brigade takes the task
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
What do we need? 
Demo Environment: 
•Raspberry Pi Model B 
•Debian Wheezy (armel version) http://bit.ly/1jpsN7s 
•Java Embedded Suite http://bit.ly/Rw0e1d 
•Oracle Event Processing Embedded http://bit.ly/1kjMenb 
•Free Webcam Capture library from SarXos http://bit.ly/1zKleCy 
•USB web camera 
•From any store, starting from 5 Euro 
•Deliberately low resolution (it works mainly as a motion detector) 
•Any iOS or Android device 
•Optional push notification service 
24 
Push
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Let’s see how it works...
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Q&A 
26 
Lukasz Romaszewski 
Oracle ISV Migration Center FMW Consultant 
lukasz.romaszewski@oracle.com 
ISV Migration Center blog: http://blogs.oracle.com/imc
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 
Snapshots from JavaCamp #13
Łukasz Romaszewski on Internet of Things Raspberry Pi and Java Embedded JavaCamp #13

Más contenido relacionado

La actualidad más candente

Apache Hadoop YARN: state of the union - Tokyo
Apache Hadoop YARN: state of the union - Tokyo Apache Hadoop YARN: state of the union - Tokyo
Apache Hadoop YARN: state of the union - Tokyo
DataWorks Summit
 
Apache Hadoop YARN: State of the Union
Apache Hadoop YARN: State of the UnionApache Hadoop YARN: State of the Union
Apache Hadoop YARN: State of the Union
DataWorks Summit
 

La actualidad más candente (20)

Real-Time Anomaly Detection using LSTM Auto-Encoders with Deep Learning4J on ...
Real-Time Anomaly Detection using LSTM Auto-Encoders with Deep Learning4J on ...Real-Time Anomaly Detection using LSTM Auto-Encoders with Deep Learning4J on ...
Real-Time Anomaly Detection using LSTM Auto-Encoders with Deep Learning4J on ...
 
APEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaciAPEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaci
 
Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)
Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)
Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)
 
Virtual Compute Appliance Oracle IaaS
Virtual Compute Appliance Oracle IaaS Virtual Compute Appliance Oracle IaaS
Virtual Compute Appliance Oracle IaaS
 
The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...
The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...
The Power of Java and Oracle WebLogic Server in the Public Cloud (OpenWorld, ...
 
Developer day v2
Developer day v2Developer day v2
Developer day v2
 
Oracle SPARC T7 a M7 servery
Oracle SPARC T7 a M7 serveryOracle SPARC T7 a M7 servery
Oracle SPARC T7 a M7 servery
 
Solving Cybersecurity at Scale
Solving Cybersecurity at ScaleSolving Cybersecurity at Scale
Solving Cybersecurity at Scale
 
Containers and Big Data
Containers and Big Data Containers and Big Data
Containers and Big Data
 
Apache Deep Learning 201
Apache Deep Learning 201Apache Deep Learning 201
Apache Deep Learning 201
 
Aioug ha day oct2015 goldengate- High Availability Day 2015
Aioug ha day oct2015 goldengate- High Availability Day 2015Aioug ha day oct2015 goldengate- High Availability Day 2015
Aioug ha day oct2015 goldengate- High Availability Day 2015
 
Apache Hadoop YARN: state of the union - Tokyo
Apache Hadoop YARN: state of the union - Tokyo Apache Hadoop YARN: state of the union - Tokyo
Apache Hadoop YARN: state of the union - Tokyo
 
Oracle Ravello
Oracle Ravello Oracle Ravello
Oracle Ravello
 
Apache NiFi Toronto Meetup
Apache NiFi Toronto MeetupApache NiFi Toronto Meetup
Apache NiFi Toronto Meetup
 
Sesion covergentes 2016
Sesion covergentes 2016Sesion covergentes 2016
Sesion covergentes 2016
 
What's New in Apache Hive
What's New in Apache HiveWhat's New in Apache Hive
What's New in Apache Hive
 
Apache Hadoop YARN: State of the Union
Apache Hadoop YARN: State of the UnionApache Hadoop YARN: State of the Union
Apache Hadoop YARN: State of the Union
 
HDF: Hortonworks DataFlow: Technical Workshop
HDF: Hortonworks DataFlow: Technical WorkshopHDF: Hortonworks DataFlow: Technical Workshop
HDF: Hortonworks DataFlow: Technical Workshop
 
Oracle Data Protection - 1. část
Oracle Data Protection - 1. částOracle Data Protection - 1. část
Oracle Data Protection - 1. část
 
Hadoop and Spark – Perfect Together
Hadoop and Spark – Perfect TogetherHadoop and Spark – Perfect Together
Hadoop and Spark – Perfect Together
 

Destacado

Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features
WSO2
 

Destacado (7)

Web en Vert : Monitor your home with a Raspberry
Web en Vert : Monitor your home with a RaspberryWeb en Vert : Monitor your home with a Raspberry
Web en Vert : Monitor your home with a Raspberry
 
Running Chrome/Android OS on Raspberry Pi
Running Chrome/Android OS on Raspberry PiRunning Chrome/Android OS on Raspberry Pi
Running Chrome/Android OS on Raspberry Pi
 
Android things intro
Android things introAndroid things intro
Android things intro
 
Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features
 
Data distribution in the cloud with Node.js
Data distribution in the cloud with Node.jsData distribution in the cloud with Node.js
Data distribution in the cloud with Node.js
 
Smart Wireless Surveillance Monitoring using RASPBERRY PI
Smart Wireless Surveillance Monitoring using RASPBERRY PISmart Wireless Surveillance Monitoring using RASPBERRY PI
Smart Wireless Surveillance Monitoring using RASPBERRY PI
 
Docker & IoT: protecting the Datacenter
Docker & IoT: protecting the DatacenterDocker & IoT: protecting the Datacenter
Docker & IoT: protecting the Datacenter
 

Similar a Łukasz Romaszewski on Internet of Things Raspberry Pi and Java Embedded JavaCamp #13

Managing Complexity in Mobile Application Deployment Using the OSGi Service P...
Managing Complexity in Mobile Application Deployment Using the OSGi Service P...Managing Complexity in Mobile Application Deployment Using the OSGi Service P...
Managing Complexity in Mobile Application Deployment Using the OSGi Service P...
mfrancis
 
Oracle ExaLogic Overview
Oracle ExaLogic OverviewOracle ExaLogic Overview
Oracle ExaLogic Overview
Peter Doolan
 
Pushing Java EE outside of the Enterprise: Home Automation and IoT - David De...
Pushing Java EE outside of the Enterprise: Home Automation and IoT - David De...Pushing Java EE outside of the Enterprise: Home Automation and IoT - David De...
Pushing Java EE outside of the Enterprise: Home Automation and IoT - David De...
JAXLondon2014
 

Similar a Łukasz Romaszewski on Internet of Things Raspberry Pi and Java Embedded JavaCamp #13 (20)

OracleOEP-EWebcast
OracleOEP-EWebcastOracleOEP-EWebcast
OracleOEP-EWebcast
 
Simplify IT: Oracle SuperCluster
Simplify IT: Oracle SuperCluster Simplify IT: Oracle SuperCluster
Simplify IT: Oracle SuperCluster
 
Oracle Database Cloud Service
Oracle Database Cloud ServiceOracle Database Cloud Service
Oracle Database Cloud Service
 
Engineered Systems: Environment-as-a-Service Demonstration
Engineered Systems: Environment-as-a-Service DemonstrationEngineered Systems: Environment-as-a-Service Demonstration
Engineered Systems: Environment-as-a-Service Demonstration
 
People Counting: Internet of Things in Motion at JavaOne 2013
People Counting: Internet of Things in Motion at JavaOne 2013People Counting: Internet of Things in Motion at JavaOne 2013
People Counting: Internet of Things in Motion at JavaOne 2013
 
Java in the Air: A Case Study for Java-based Environment Monitoring Stations
Java in the Air: A Case Study for Java-based Environment Monitoring StationsJava in the Air: A Case Study for Java-based Environment Monitoring Stations
Java in the Air: A Case Study for Java-based Environment Monitoring Stations
 
WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014
 
Exalogic Technical Overview
Exalogic Technical OverviewExalogic Technical Overview
Exalogic Technical Overview
 
Pushing Java EE outside of the Enterprise - Home Automation
Pushing Java EE outside of the Enterprise - Home AutomationPushing Java EE outside of the Enterprise - Home Automation
Pushing Java EE outside of the Enterprise - Home Automation
 
Java Micro Edition (ME) 8 Deep Dive
Java Micro Edition (ME) 8 Deep DiveJava Micro Edition (ME) 8 Deep Dive
Java Micro Edition (ME) 8 Deep Dive
 
Systems oracle overview_hardware
Systems oracle overview_hardwareSystems oracle overview_hardware
Systems oracle overview_hardware
 
Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...
Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...
Sviluppo IoT - Un approccio standard da Nerd ad Impresa, prove pratiche di Me...
 
Plataforma Java Embedded & Internet of Things (IoT)
Plataforma Java Embedded & Internet of Things (IoT)Plataforma Java Embedded & Internet of Things (IoT)
Plataforma Java Embedded & Internet of Things (IoT)
 
Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...
Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...
Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...
 
Managing Complexity in Mobile Application Deployment Using the OSGi Service P...
Managing Complexity in Mobile Application Deployment Using the OSGi Service P...Managing Complexity in Mobile Application Deployment Using the OSGi Service P...
Managing Complexity in Mobile Application Deployment Using the OSGi Service P...
 
Oracle ExaLogic Overview
Oracle ExaLogic OverviewOracle ExaLogic Overview
Oracle ExaLogic Overview
 
Oracle IaaS including OCM and Ravello
Oracle IaaS including OCM and RavelloOracle IaaS including OCM and Ravello
Oracle IaaS including OCM and Ravello
 
Pushing Java EE outside of the Enterprise: Home Automation and IoT - David De...
Pushing Java EE outside of the Enterprise: Home Automation and IoT - David De...Pushing Java EE outside of the Enterprise: Home Automation and IoT - David De...
Pushing Java EE outside of the Enterprise: Home Automation and IoT - David De...
 
Oracle super cluster for oracle e business suite
Oracle super cluster for oracle e business suiteOracle super cluster for oracle e business suite
Oracle super cluster for oracle e business suite
 
Soa12c launch 5 event processing shmakov eng cr
Soa12c launch 5 event processing shmakov eng crSoa12c launch 5 event processing shmakov eng cr
Soa12c launch 5 event processing shmakov eng cr
 

Más de Tomek Borek

Architecture visualizers - tools usability study
Architecture visualizers - tools usability studyArchitecture visualizers - tools usability study
Architecture visualizers - tools usability study
Tomek Borek
 
Meta on HCI - keyword analysis and trends
Meta on HCI - keyword analysis and trendsMeta on HCI - keyword analysis and trends
Meta on HCI - keyword analysis and trends
Tomek Borek
 

Más de Tomek Borek (20)

Noc informatyka - co ja wiem o testowaniu
Noc informatyka - co ja wiem  o testowaniuNoc informatyka - co ja wiem  o testowaniu
Noc informatyka - co ja wiem o testowaniu
 
Teaching PostgreSQL to new people
Teaching PostgreSQL to new peopleTeaching PostgreSQL to new people
Teaching PostgreSQL to new people
 
Nowoczesne architektury
Nowoczesne architekturyNowoczesne architektury
Nowoczesne architektury
 
Java tuning on GNU/Linux for busy dev
Java tuning on GNU/Linux for busy devJava tuning on GNU/Linux for busy dev
Java tuning on GNU/Linux for busy dev
 
Jvm tuning in a rush! - Lviv JUG
Jvm tuning in a rush! - Lviv JUGJvm tuning in a rush! - Lviv JUG
Jvm tuning in a rush! - Lviv JUG
 
Java Memory Consistency Model - concepts and context
Java Memory Consistency Model - concepts and contextJava Memory Consistency Model - concepts and context
Java Memory Consistency Model - concepts and context
 
Seeing through the smoke
Seeing through the smokeSeeing through the smoke
Seeing through the smoke
 
AR drone - Polish JUG short demo
AR drone - Polish JUG short demoAR drone - Polish JUG short demo
AR drone - Polish JUG short demo
 
Testing SAAS, how to go about it?
Testing SAAS, how to go about it?Testing SAAS, how to go about it?
Testing SAAS, how to go about it?
 
Spróbujmy szczęścia bo zaciskanie pięści nie działa
Spróbujmy szczęścia bo zaciskanie pięści nie działaSpróbujmy szczęścia bo zaciskanie pięści nie działa
Spróbujmy szczęścia bo zaciskanie pięści nie działa
 
Lightning talk on Java Memory Consistency Model Java Day Kiev 2014
Lightning talk on Java Memory Consistency Model Java Day Kiev 2014Lightning talk on Java Memory Consistency Model Java Day Kiev 2014
Lightning talk on Java Memory Consistency Model Java Day Kiev 2014
 
Few words about happiness (Polish talk) / O szczęściu słów kilka
Few words about happiness (Polish talk) / O szczęściu słów kilkaFew words about happiness (Polish talk) / O szczęściu słów kilka
Few words about happiness (Polish talk) / O szczęściu słów kilka
 
Jak użytecznie, prawdziwie i solidnie odpowiedzieć na pytanie "jak było"
Jak użytecznie, prawdziwie i solidnie odpowiedzieć na pytanie "jak było"Jak użytecznie, prawdziwie i solidnie odpowiedzieć na pytanie "jak było"
Jak użytecznie, prawdziwie i solidnie odpowiedzieć na pytanie "jak było"
 
It's not always the application's fault
It's not always the application's faultIt's not always the application's fault
It's not always the application's fault
 
To nie zawsze wina aplikacji!
To nie zawsze wina aplikacji!To nie zawsze wina aplikacji!
To nie zawsze wina aplikacji!
 
Wprowadzenie do optymalizacji wielokryterialnej / Intro to multicriteria opti...
Wprowadzenie do optymalizacji wielokryterialnej / Intro to multicriteria opti...Wprowadzenie do optymalizacji wielokryterialnej / Intro to multicriteria opti...
Wprowadzenie do optymalizacji wielokryterialnej / Intro to multicriteria opti...
 
Git nie dla początkujących
Git nie dla początkującychGit nie dla początkujących
Git nie dla początkujących
 
Architecture visualizers - tools usability study
Architecture visualizers - tools usability studyArchitecture visualizers - tools usability study
Architecture visualizers - tools usability study
 
Meta on HCI - keyword analysis and trends
Meta on HCI - keyword analysis and trendsMeta on HCI - keyword analysis and trends
Meta on HCI - keyword analysis and trends
 
"Narco" emotions - description of study on whether Twitter can be used to gle...
"Narco" emotions - description of study on whether Twitter can be used to gle..."Narco" emotions - description of study on whether Twitter can be used to gle...
"Narco" emotions - description of study on whether Twitter can be used to gle...
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

Łukasz Romaszewski on Internet of Things Raspberry Pi and Java Embedded JavaCamp #13

  • 1. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Home Security System Java Embedded in Action Łukasz Romaszewski ISV Migration Consultant Oracle November 22, 2014
  • 2. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |
  • 3. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Java in the Internet of Things One Language, One Platform, Runs Everywhere 3 Enterprise Data & Applications Cloud for Embedded Devices Meters Smart Appliances & electronics Personal Devices Med-Large Embedded / Multi- function Devices VoIP Comm Industrial controls / Network Appliances Management / Monitoring / Operations Sensors / Microcontrollers Connected Vehicles
  • 4. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | The Spectrum of Java Embedded 4 Small Embedded Medium Embedded Large Embedded Platform Footprint Device CPU/ GPU/I-O 50KB-1MB 1MB-10MB 10MB-100MB
  • 5. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Java Embedded in Practice Example Devices 5 •ATMs •Parking Meters •POS Systems •Lottery/Gaming Systems •Multi Function Printers •Intelligent Power Module •Netbooks •Routers & Switches •Storage Appliances •Network Management Systems •Medical Imaging Systems •Radar Systems •Industrial PCs •Factory Automation Systems •Geo-Imaging Devices •Smart Meters •RFID Readers •Video Conferencing Systems •In-Flight Entertainment Systems •Video Streaming Systems •Electronic Voting Systems •Voice Messaging Systems •Security Systems
  • 6. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Java Embedded Suite On-device Java Platform
  • 7. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Introducing Oracle Java Embedded Suite 7 Enterprise Data & Applications Java Embedded Suite Embedded DB •Includes capabilities to support today’s intelligent devices •Java Embedded runtime plus full SQL DB and Web Server/Services
  • 8. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Oracle Java Embedded Suite (JES) JES consist of three parts: •Java SE Embedded •Java Standard Edition for embedded devices •Java DB •Java SQL Database (Derby) •Glasfish Embedded •Subset of JEE Web Profile •Servlet container •RESTful web services 8 OS & Hardware Java SE Embedded Java DB (SQL Database) Glassfish (Web Server) Your applications
  • 9. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | JES - Sample Deployment Architecture JES Deployment •JES acting as a concentrator (hub) of multiple edge devices •Collects and forwards the data and messages to the backend •Performs local analytics •Hosts web services and applications •Backend system gets aggregated and pre- processed data 10
  • 10. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Oracle Event Processing for Java Embedded On-device event processing
  • 11. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Complex Event Processing (CEP) Complex Event Processing •Method of tracking and analyzing data combined from multiple streams to infer events or patterns that suggest more complicated circumstances •Goal is to identify business meaning of events (such as opportunities or threats) and respond to them as quickly as possible. 12 Event Patterns Event Stream Fine-grained simple events from sensors and edge devices Complex Events Machine module non-functional, power outage, device tampering, etc.
  • 12. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Complex Event Processing (CEP) CEP event patterns •Filtering: New stream filtered for specific criteria, e.g. temperature > 200 F •Correlation & Aggregation: Scrolling, time-based window metrics, e.g. average heart pulse rate in the last 3 days •Pattern Matching: Notification of detected event patterns, e.g. machine events A, B and C occurred within 15 minute window •Geospatial, Predictive Modeling and beyond Immediate recognition of geographical movement patterns, apply historical business intelligence models using data mining algorithms 13 Event Patterns Event Stream Fine-grained simple events from sensors and edge devices Complex Events Machine module non-functional, power outage, device tampering, etc.
  • 13. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Input Adapter Channel Input Adapter Channel Business Logic (CQL) Channel Channel Channel Output Adapter Output Adapter Oracle Event Processing Application DB Input adapters connect to data sources Channels help control the flow of data and can be tuned for optimal performance Databases, Coherence caches, Hadoop (HDFS) and NoSQL database can be referenced directly in CQL processors CQL processors contain filtering, correlation, aggregation and pattern matching business logic Output adapters send data and alerts to downstream systems and business processes Business Logic (CQL) Business Logic (CQL) Big Data Coherence 14
  • 14. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | High-Performance In-Memory Data Processing Input Adapter Data Input Adapter Data Channel Business Logic (CQL) Channel Data Data Analytics Channel Business Logic (CQL) Enrich Output Adapter Data Data Data Data Analytics: Continuously Sliding Windows of Streaming Data, Filtering, Correlations, Calculations, Aggregations, Pattern Matching, Missing Event Detection, Spatial Analysis, etc. Enrichment: Integrate with data from DB, Coherence, NoSQL, Hadoop etc. Oracle Event Processing 15
  • 15. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | OEP Oracle Event Processing: From Noise to Value Connecting the Internet-of-Things to Your Enterprise Distributed Intelligence •Filtering •Correlation •Aggregation •Pattern matching Devices / Gateways SOA Internet of Things SOA / Enterprise “Sea of data” Macro-event High-value Actionable In-context OEP embedded OEP • High Volume • Continuous Streaming • Sub-Millisecond Latency • Disparate Sources • Time-Window Processing • Pattern Matching • High Availability / Scalability • Unique Coherence Integration • Geospatial, Geo-fencing • Big Data & IoT Integration •Action! 16
  • 16. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Complex Event Processing vs „old school” database Inverted Database Data is ‘static’ Queries are ‘dynamic’ •Data (event) is ‘dynamic’ •Queries are ‘static’
  • 17. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | OEP for Java Embedded Components Architecture OEP Architecture •OEP is a collection of OSGi bundles. •OEP supports dynamic deployment of OEP applications (also packaged as OSGi bundles). •Modular architecture simplifies customization of OEP for different environments •Core OEP programming model is uniform (Java, CQL) across all environments. 18 Modular Architecture based on OSGi OSGi Module Framework Module management, lifecycle & classloading Core service registry OEP Server Modules (OSGi bundles) CQL Engine Config & Admin Logging Adapters . . . OEP Applications (OSGi bundles) Application 1 Application 2 . . . Embedded JRE JavaDB Java Embedded Suite OEP Embedded
  • 18. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Continuous Query Language (CQL) •CQL is based on standard SQL with extensions for streaming data –CQL queries support filtering, partitioning, aggregation, correlation (joins across streams), and pattern matching on streaming and relational data –Extends standard SQL by adding notion of Stream, operators for mapping between relations and streams, and extensions for pattern matching –Window operator (e.g. RANGE 1 MINUTE) transforms stream into a relation •Example: SELECT AVG(temperature) AS avgTemp, tempSensorId FROM temperatureInputStream[RANGE 1 MINUTE] GROUP BY tempSensorId 19
  • 19. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Demo Using JES + OEP + USB webcamera on Raspberry Pi to create smart home security system
  • 20. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Home Surveillance System Concept Oracle Confidential – Internal/Restricted/Highly Restricted 22 Secure VPN Internet Data Center OEP + BAM + BPM Push House owner Thief USB web camera Raspberry Pi + JES + OEP Embedded
  • 21. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Home Surveillance System – Incident Processing Oracle Confidential – Internal/Restricted/Highly Restricted 23 Data Center OEP + BAM + BPM House owner Owner confirms the incident using MAF application Operator dispatches the incident to a brigade System generates a task for an operator The nearest brigade takes the task
  • 22. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | What do we need? Demo Environment: •Raspberry Pi Model B •Debian Wheezy (armel version) http://bit.ly/1jpsN7s •Java Embedded Suite http://bit.ly/Rw0e1d •Oracle Event Processing Embedded http://bit.ly/1kjMenb •Free Webcam Capture library from SarXos http://bit.ly/1zKleCy •USB web camera •From any store, starting from 5 Euro •Deliberately low resolution (it works mainly as a motion detector) •Any iOS or Android device •Optional push notification service 24 Push
  • 23. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Let’s see how it works...
  • 24. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Q&A 26 Lukasz Romaszewski Oracle ISV Migration Center FMW Consultant lukasz.romaszewski@oracle.com ISV Migration Center blog: http://blogs.oracle.com/imc
  • 25. Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Snapshots from JavaCamp #13