SlideShare a Scribd company logo
1 of 41
Download to read offline
#JCConfTaiwan 2017
Next Generation of
Cloud Computing:
Edge Computing and
Apache Edgent
Joseph S. Kuo a.k.a. CyberJos
#JCConfTaiwan 2017
About Me
●
數學系出身,玩了一堆語言和架構
●
23年程式資歷,18年Java資歷
●
撰寫過Basic, Pascal, C/C++, LPC, Java,
JavaScript, Python, etc.
●
擔任過資訊講師,曾任職於加 簡訊公司、遊戲值
雲端平台公司、全球電子商務公司、資安公司以
及社群趨勢分析公司
●
希望能一輩子玩技術寫程式到老
#JCConfTaiwan 2017
Agenda
●
What is Edge Computing?
●
More about Edge Computing
●
What is Apache Edgent?
●
Quick Start
#JCConfTaiwan 2017
What is Edge Computing?
#JCConfTaiwan 2017
邊緣運算?
#JCConfTaiwan 2017
跟邊緣人無關
#JCConfTaiwan 2017
Cloud Computing
●
Cloud Computing has been raised for long
time. Its scope reaches a historically new high
every year
●
There are huge amount of various data
generated every day, including news, posts,
tweets, logs, user behaviors...
●
Models/patterns/analysis related to Machine
learning increase the speed of expansion as
well
#JCConfTaiwan 2017
Cloud Computing Issue
●
Increasing data need more storage space and
computing power
●
Network latency between cloud and clients
becomes a more and more serious issue
●
Clients may not be able to work while network
outage/disconnection
#JCConfTaiwan 2017
Fog Computing
●
Cisco introduced this concept in 2014. Next
year, Cisco, Dell, Intel, Microsoft and other
companies founded OpenFog Consortium
which now contains more than 50 companies
●
It’s an architecture that uses one or more
collaborative end-user clients or near-user
edge devices to handle a substantial amount
of storage, communication, configuration,
control, measurement and management.
#JCConfTaiwan 2017
Fog Computing Goal
●
Proximity to end-users and clients
●
Dense geographical distribution and local
resource pooling
●
Latency reduction and backbone bandwidth
saving to achieve better quality of service
●
Edge analytics/stream mining
●
Superior user-experience and redundancy in
case of failure
#JCConfTaiwan 2017
Fog Computing Issue
●
Computing ability of Machine Learning still
need lots of improvement
●
Is it possible to move data collectors closer to
clients?
●
The concept of CDN
#JCConfTaiwan 2017
Edge Computing
●
An architecture of optimizing cloud computing
systems by performing data
processing/analytics and knowledge
generation at the edge of the network or near
the source of the data
●
This reduces the communications bandwidth
needed between clients and data centers
●
This approach requires leveraging resources
that may not be continuously connected to a
network like laptops, smart phones, sensors
#JCConfTaiwan 2017
Edge Computing Advantage
●
Decreases the volumes of data that must be
moved
●
Reduces transmission costs, shrinks network
latency and improves quality of services
●
Eliminates the core computing environment
limiting or removing a major bottleneck and a
potential point of failure
●
Security and scalability
#JCConfTaiwan 2017
Edge Computing Application
●
Low latency and high bandwidth of network
●
Ability of real-time image processing, analysis
and recognition
●
IoT applications: autonomous cars, unmanned
flying vehicles, AR/VR, medical or weather
monitoring, machine learning, AI
●
It can run on a huge computing equipment, a
cluster of small ones, or mobile devices that
connect to cloud via cable, WIFI or bluetooth
#JCConfTaiwan 2017
More about Edge Computing
#JCConfTaiwan 2017
Situation of Edge Computing
●
AWS announced Lambda@Edge, Greengrass
and Snowball Edit in 2016
●
SAP bought IoT platform provider Plat.One for
Edge Computing
●
Linux Foundation gathered more than 50
companies to build up an open source project
named EdgeX Foundry which is a general IoT
Edge Computing framework
#JCConfTaiwan 2017
Will Cloud Computing disappear?
#JCConfTaiwan 2017
Edge will become an important part
of infrastructure and Cloud will turn
to play a new role instead in future
#JCConfTaiwan 2017
Three Tier Architecture
#JCConfTaiwan 2017
Web
Presentation
Business Logic
Data Access
#JCConfTaiwan 2017
Cloud Computing
SaaS
PaaS
IaaS
#JCConfTaiwan 2017
Computing Architecture
Cloud
Edge
Client
#JCConfTaiwan 2017
Another Computing Architecture
https://www.pubnub.com/blog/moving-the-cloud-to-the-edge-computing/
#JCConfTaiwan 2017
What is Apache Edgent?
#JCConfTaiwan 2017
Apache Edgent
A programming model and micro-kernel style
runtime that can be embedded in gateways
and small footprint edge devices enabling
local, real-time, analytics on the continuous
streams of data coming from equipment,
vehicles, systems, appliances, devices and
sensors of all kinds.
Working in conjunction with centralized
analytic systems, it provides efficient and
timely analytics across the whole IoT
ecosystem: from the center to the edge.
#JCConfTaiwan 2017
Apache Edgent
●
Analyzes data and events at the device. When
we analyze on the edge, we can:
●
Reduce the amount of data transmitted to
analytics servers
●
Reduce the amount of data to be stored
●
Uses analytics to determine when data needs
to be sent to a back-end system for further
analysis, action, or storage
●
Shifts from sending a continuous flow of trivial
data to the server to sending only essential
and meaningful data as it occurs
#JCConfTaiwan 2017
History
●
IBM released IoT framework named Quarks
that analyze data generated by IoT
●
Apache Quarks was undergoing incubation
●
Apache Quarks was renamed to Apache
Edgent in July 2016 due to the name not being
unique enough
●
It is still in incubation now
#JCConfTaiwan 2017
Feature
●
Functional flow API for streaming analytics,
such like Map, Flatmap, Filter, Aggregate,
Split, Union, ...
●
Connectors (MQTT, HTTP, Watson, JDBC,
File, Kafka, Web Socket, custom)
●
Bi-directional communications with the back-
end
●
Web based interface to view application graph
and metrics
●
Edgent uses Java Lambda expressions
#JCConfTaiwan 2017
Environment
●
Runs on edge device, Raspberry Pi or Android
●
A simple Linux box on the edge can run Java
7/8 and Edgent
●
Currently Java based, may support other
languages as more developers get involved
●
Version: 1.1.0-incubating (2017-03-20)
#JCConfTaiwan 2017
Use Case
●
IoT: Analyze data on distributed edge devices
and mobile devices to:
●
Reduce the cost of transmitting data
●
Provide local feedback at the devices
●
Embedded in an application server instance:
Analyze application server error logs in real
time without impacting network traffic
●
Server rooms and machine rooms: Analyze
machine health in real time without impacting
network traffic or when bandwidth is limited
#JCConfTaiwan 2017
Apache Edgent IoT Ecosystem
#JCConfTaiwan 2017
Edgent provides APIs and a
lightweight runtime to analyze
streaming data at the edge
#JCConfTaiwan 2017
Quick Start
#JCConfTaiwan 2017
Stream Analytics
●
The fundamental building block of an Edgent
application is a stream: a continuous sequence
of tuples (messages, events, sensor readings,
and so on)
●
The Edgent API provides the ability to process
or analyze each tuple as it appears on a
stream, resulting in a derived stream
#JCConfTaiwan 2017
Stream Analytics
●
Streams are terminated using sink functions
that can perform local device control or send
information to centralized analytic systems
through a message hub
●
Edgent's primary API is functional where
streams are sourced, transformed, analyzed or
sinked though functions, typically represented
as lambda expressions
#JCConfTaiwan 2017
Temperature Sensor
import java.util.Random;
import org.apache.edgent.function.Supplier;
public class TempSensor implements
Supplier<Double> {
double currentTemp = 65.0;
Random rand;
TempSensor() { rand = new Random(); }
public Double get() {
double newTemp = rand.nextGaussian() +
currentTemp;
currentTemp = newTemp;
return currentTemp;
}
}
#JCConfTaiwan 2017
Temperature Sensor Application
import static
java.util.concurrent.TimeUnit.MILLISECONDS;
import
org.apache.edgent.providers.direct.DirectProvider
;
import org.apache.edgent.topology.*;
public class TempSensorApplication {
public static void main(String[] args) {
TempSensor sensor = new TempSensor();
DirectProvider dp = new DirectProvider();
Topology topology = dp.newTopology();
TStream<Double> temp =
topology.poll(sensor, 100,
MILLISECONDS);
TStream<Double> filtered =
temp.filter(t -> t < 50 || t >
80);
filtered.print();
#JCConfTaiwan 2017
Stream Concept
●
Filter: stream.filter(t -> t > 0)
●
Split (List): stream.split(2, t ->
t.intValue())
●
Union: stream1.union(stream2)
●
Window: stream.last(5, SECONDS, t -> 0)
●
Aggregate: window.aggregate((t, key) ->
{ return Collections.max(t); })
●
Batch: window.batch((t, key) ->
{ return t.size(); })
#JCConfTaiwan 2017
Common Operation
●
Topology: collection(Collection),
events(Consumer),
generate(Supplier), of(T...),
strings(String...)
●
TStream: asString(), filter, flatMap, join,
last, map, peek, split, union
●
TWindow: aggregate, batch
#JCConfTaiwan 2017
Application Console
#JCConfTaiwan 2017
Thank You!

More Related Content

What's hot

Walking through the fog (computing) - Keynote talk at Italian Networking Work...
Walking through the fog (computing) - Keynote talk at Italian Networking Work...Walking through the fog (computing) - Keynote talk at Italian Networking Work...
Walking through the fog (computing) - Keynote talk at Italian Networking Work...
FBK CREATE-NET
 

What's hot (20)

Cloud Computing and Edge Computing(CTO Kieun Park) - Edge Computing Seminar
Cloud Computing and Edge Computing(CTO Kieun Park) - Edge Computing SeminarCloud Computing and Edge Computing(CTO Kieun Park) - Edge Computing Seminar
Cloud Computing and Edge Computing(CTO Kieun Park) - Edge Computing Seminar
 
EDGE COMPUTING
EDGE COMPUTINGEDGE COMPUTING
EDGE COMPUTING
 
Innovations in Edge Computing and MEC
Innovations in Edge Computing and MECInnovations in Edge Computing and MEC
Innovations in Edge Computing and MEC
 
Edge computing
Edge computingEdge computing
Edge computing
 
Edge Computing Platforms and Protocols - Ph.D. thesis
Edge Computing Platforms and Protocols - Ph.D. thesisEdge Computing Platforms and Protocols - Ph.D. thesis
Edge Computing Platforms and Protocols - Ph.D. thesis
 
fog&Edge computing
fog&Edge computingfog&Edge computing
fog&Edge computing
 
Edge Computing : future of IoT ?
Edge Computing : future of IoT ? Edge Computing : future of IoT ?
Edge Computing : future of IoT ?
 
Docker:- Application Delivery Platform Towards Edge Computing
Docker:- Application Delivery Platform Towards Edge ComputingDocker:- Application Delivery Platform Towards Edge Computing
Docker:- Application Delivery Platform Towards Edge Computing
 
Soldatos io t-academy-cosmote-231117-v-final
Soldatos io t-academy-cosmote-231117-v-finalSoldatos io t-academy-cosmote-231117-v-final
Soldatos io t-academy-cosmote-231117-v-final
 
Edge computing
Edge computingEdge computing
Edge computing
 
Edge Computing & AI
Edge Computing & AIEdge Computing & AI
Edge Computing & AI
 
Mobile Edge Computing
Mobile Edge ComputingMobile Edge Computing
Mobile Edge Computing
 
Edge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudEdge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google Cloud
 
Introduction to Edge Computing using Google IoT
Introduction to Edge Computing using Google IoTIntroduction to Edge Computing using Google IoT
Introduction to Edge Computing using Google IoT
 
Walking through the fog (computing) - Keynote talk at Italian Networking Work...
Walking through the fog (computing) - Keynote talk at Italian Networking Work...Walking through the fog (computing) - Keynote talk at Italian Networking Work...
Walking through the fog (computing) - Keynote talk at Italian Networking Work...
 
Sharon’ Besser, Net Optics VP of Technology, Net Optics, discusses Lawful Int...
Sharon’ Besser, Net Optics VP of Technology, Net Optics, discusses Lawful Int...Sharon’ Besser, Net Optics VP of Technology, Net Optics, discusses Lawful Int...
Sharon’ Besser, Net Optics VP of Technology, Net Optics, discusses Lawful Int...
 
Edge Computing for the Industry
Edge Computing for the IndustryEdge Computing for the Industry
Edge Computing for the Industry
 
OpenStack (projects 101)
OpenStack (projects 101)OpenStack (projects 101)
OpenStack (projects 101)
 
Fog computing
Fog computingFog computing
Fog computing
 
Edge Computing: A Unified Infrastructure for all the Different Pieces
Edge Computing: A Unified Infrastructure for all the Different PiecesEdge Computing: A Unified Infrastructure for all the Different Pieces
Edge Computing: A Unified Infrastructure for all the Different Pieces
 

Similar to JCConf 2017 - Next Generation of Cloud Computing: Edge Computing and Apache Edgent

Amruth_Kumar_Juturu_Resume
Amruth_Kumar_Juturu_ResumeAmruth_Kumar_Juturu_Resume
Amruth_Kumar_Juturu_Resume
Amruth Kumar
 
Are you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the networkAre you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the network
Megan O'Keefe
 

Similar to JCConf 2017 - Next Generation of Cloud Computing: Edge Computing and Apache Edgent (20)

Conquering the Lambda architecture in LinkedIn metrics platform with Apache C...
Conquering the Lambda architecture in LinkedIn metrics platform with Apache C...Conquering the Lambda architecture in LinkedIn metrics platform with Apache C...
Conquering the Lambda architecture in LinkedIn metrics platform with Apache C...
 
BigData in IoT #iotconfua
BigData in IoT #iotconfuaBigData in IoT #iotconfua
BigData in IoT #iotconfua
 
Swisscom Network Analytics
Swisscom Network AnalyticsSwisscom Network Analytics
Swisscom Network Analytics
 
Володимир Шиманський “Роль спільноти і OpenSource в IoT бізнесі” {R0boCamp}
Володимир Шиманський “Роль спільноти і OpenSource в IoT бізнесі” {R0boCamp} Володимир Шиманський “Роль спільноти і OpenSource в IoT бізнесі” {R0boCamp}
Володимир Шиманський “Роль спільноти і OpenSource в IoT бізнесі” {R0boCamp}
 
Apache edgent
Apache edgentApache edgent
Apache edgent
 
Apache edgent with STM32f401 to watson iot platform
Apache edgent with STM32f401 to watson iot platformApache edgent with STM32f401 to watson iot platform
Apache edgent with STM32f401 to watson iot platform
 
Path to continuous delivery
Path to continuous deliveryPath to continuous delivery
Path to continuous delivery
 
QNAP NAS for IoT
QNAP NAS for IoTQNAP NAS for IoT
QNAP NAS for IoT
 
Amruth_Kumar_Juturu_Resume
Amruth_Kumar_Juturu_ResumeAmruth_Kumar_Juturu_Resume
Amruth_Kumar_Juturu_Resume
 
Swisscom Network Analytics Data Mesh Architecture - ETH Viscon - 10-2022.pdf
Swisscom Network Analytics Data Mesh Architecture - ETH Viscon - 10-2022.pdfSwisscom Network Analytics Data Mesh Architecture - ETH Viscon - 10-2022.pdf
Swisscom Network Analytics Data Mesh Architecture - ETH Viscon - 10-2022.pdf
 
MindSphere: The cloud-based, open IoT operating system. Damiano Manocchia
MindSphere: The cloud-based, open IoT operating system. Damiano ManocchiaMindSphere: The cloud-based, open IoT operating system. Damiano Manocchia
MindSphere: The cloud-based, open IoT operating system. Damiano Manocchia
 
The Internet of Things: Patterns for building real world applications
The Internet of Things:  Patterns for building real world applicationsThe Internet of Things:  Patterns for building real world applications
The Internet of Things: Patterns for building real world applications
 
Internet of Things: Patterns For Building Real World Applications
Internet of Things: Patterns For Building Real World ApplicationsInternet of Things: Patterns For Building Real World Applications
Internet of Things: Patterns For Building Real World Applications
 
Edge optimized architecture for fabric defect detection in real-time
Edge optimized architecture for fabric defect detection in real-timeEdge optimized architecture for fabric defect detection in real-time
Edge optimized architecture for fabric defect detection in real-time
 
Industrial Internet of Things: Protocols an Standards
Industrial Internet of Things: Protocols an StandardsIndustrial Internet of Things: Protocols an Standards
Industrial Internet of Things: Protocols an Standards
 
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
 
Cloud Experience: Data-driven Applications Made Simple and Fast
Cloud Experience: Data-driven Applications Made Simple and FastCloud Experience: Data-driven Applications Made Simple and Fast
Cloud Experience: Data-driven Applications Made Simple and Fast
 
Are you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the networkAre you ready to be edgy? Bringing applications to the edge of the network
Are you ready to be edgy? Bringing applications to the edge of the network
 
OracleOEP-EWebcast
OracleOEP-EWebcastOracleOEP-EWebcast
OracleOEP-EWebcast
 
Cloud-Native Workshop New York- Pivotal
Cloud-Native Workshop New York- PivotalCloud-Native Workshop New York- Pivotal
Cloud-Native Workshop New York- Pivotal
 

More from Joseph Kuo

More from Joseph Kuo (8)

JCConf 2023 - 深入淺出 Java 21 功能
JCConf 2023 - 深入淺出 Java 21 功能JCConf 2023 - 深入淺出 Java 21 功能
JCConf 2023 - 深入淺出 Java 21 功能
 
JCConf 2022 - New Features in Java 18 & 19
JCConf 2022 - New Features in Java 18 & 19JCConf 2022 - New Features in Java 18 & 19
JCConf 2022 - New Features in Java 18 & 19
 
JCConf 2021 - Java17: The Next LTS
JCConf 2021 - Java17: The Next LTSJCConf 2021 - Java17: The Next LTS
JCConf 2021 - Java17: The Next LTS
 
JCConf 2020 - New Java Features Released in 2020
JCConf 2020 - New Java Features Released in 2020JCConf 2020 - New Java Features Released in 2020
JCConf 2020 - New Java Features Released in 2020
 
TWJUG x Oracle Groundbreakers 2019 Taiwan - What’s New in Last Java Versions
TWJUG x Oracle Groundbreakers 2019 Taiwan - What’s New in Last Java VersionsTWJUG x Oracle Groundbreakers 2019 Taiwan - What’s New in Last Java Versions
TWJUG x Oracle Groundbreakers 2019 Taiwan - What’s New in Last Java Versions
 
JCConf 2018 - Retrospect and Prospect of Java
JCConf 2018 - Retrospect and Prospect of JavaJCConf 2018 - Retrospect and Prospect of Java
JCConf 2018 - Retrospect and Prospect of Java
 
JCConf 2016 - Cloud Computing Applications - Hazelcast, Spark and Ignite
JCConf 2016 - Cloud Computing Applications - Hazelcast, Spark and IgniteJCConf 2016 - Cloud Computing Applications - Hazelcast, Spark and Ignite
JCConf 2016 - Cloud Computing Applications - Hazelcast, Spark and Ignite
 
Establish The Core of Cloud Computing Application by Using Hazelcast (Chinese)
Establish The Core of  Cloud Computing Application  by Using Hazelcast (Chinese)Establish The Core of  Cloud Computing Application  by Using Hazelcast (Chinese)
Establish The Core of Cloud Computing Application by Using Hazelcast (Chinese)
 

Recently uploaded

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 

Recently uploaded (20)

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 

JCConf 2017 - Next Generation of Cloud Computing: Edge Computing and Apache Edgent

  • 1. #JCConfTaiwan 2017 Next Generation of Cloud Computing: Edge Computing and Apache Edgent Joseph S. Kuo a.k.a. CyberJos
  • 2. #JCConfTaiwan 2017 About Me ● 數學系出身,玩了一堆語言和架構 ● 23年程式資歷,18年Java資歷 ● 撰寫過Basic, Pascal, C/C++, LPC, Java, JavaScript, Python, etc. ● 擔任過資訊講師,曾任職於加 簡訊公司、遊戲值 雲端平台公司、全球電子商務公司、資安公司以 及社群趨勢分析公司 ● 希望能一輩子玩技術寫程式到老
  • 3. #JCConfTaiwan 2017 Agenda ● What is Edge Computing? ● More about Edge Computing ● What is Apache Edgent? ● Quick Start
  • 4. #JCConfTaiwan 2017 What is Edge Computing?
  • 7. #JCConfTaiwan 2017 Cloud Computing ● Cloud Computing has been raised for long time. Its scope reaches a historically new high every year ● There are huge amount of various data generated every day, including news, posts, tweets, logs, user behaviors... ● Models/patterns/analysis related to Machine learning increase the speed of expansion as well
  • 8. #JCConfTaiwan 2017 Cloud Computing Issue ● Increasing data need more storage space and computing power ● Network latency between cloud and clients becomes a more and more serious issue ● Clients may not be able to work while network outage/disconnection
  • 9. #JCConfTaiwan 2017 Fog Computing ● Cisco introduced this concept in 2014. Next year, Cisco, Dell, Intel, Microsoft and other companies founded OpenFog Consortium which now contains more than 50 companies ● It’s an architecture that uses one or more collaborative end-user clients or near-user edge devices to handle a substantial amount of storage, communication, configuration, control, measurement and management.
  • 10. #JCConfTaiwan 2017 Fog Computing Goal ● Proximity to end-users and clients ● Dense geographical distribution and local resource pooling ● Latency reduction and backbone bandwidth saving to achieve better quality of service ● Edge analytics/stream mining ● Superior user-experience and redundancy in case of failure
  • 11. #JCConfTaiwan 2017 Fog Computing Issue ● Computing ability of Machine Learning still need lots of improvement ● Is it possible to move data collectors closer to clients? ● The concept of CDN
  • 12. #JCConfTaiwan 2017 Edge Computing ● An architecture of optimizing cloud computing systems by performing data processing/analytics and knowledge generation at the edge of the network or near the source of the data ● This reduces the communications bandwidth needed between clients and data centers ● This approach requires leveraging resources that may not be continuously connected to a network like laptops, smart phones, sensors
  • 13. #JCConfTaiwan 2017 Edge Computing Advantage ● Decreases the volumes of data that must be moved ● Reduces transmission costs, shrinks network latency and improves quality of services ● Eliminates the core computing environment limiting or removing a major bottleneck and a potential point of failure ● Security and scalability
  • 14. #JCConfTaiwan 2017 Edge Computing Application ● Low latency and high bandwidth of network ● Ability of real-time image processing, analysis and recognition ● IoT applications: autonomous cars, unmanned flying vehicles, AR/VR, medical or weather monitoring, machine learning, AI ● It can run on a huge computing equipment, a cluster of small ones, or mobile devices that connect to cloud via cable, WIFI or bluetooth
  • 16. #JCConfTaiwan 2017 Situation of Edge Computing ● AWS announced Lambda@Edge, Greengrass and Snowball Edit in 2016 ● SAP bought IoT platform provider Plat.One for Edge Computing ● Linux Foundation gathered more than 50 companies to build up an open source project named EdgeX Foundry which is a general IoT Edge Computing framework
  • 17. #JCConfTaiwan 2017 Will Cloud Computing disappear?
  • 18. #JCConfTaiwan 2017 Edge will become an important part of infrastructure and Cloud will turn to play a new role instead in future
  • 23. #JCConfTaiwan 2017 Another Computing Architecture https://www.pubnub.com/blog/moving-the-cloud-to-the-edge-computing/
  • 24. #JCConfTaiwan 2017 What is Apache Edgent?
  • 25. #JCConfTaiwan 2017 Apache Edgent A programming model and micro-kernel style runtime that can be embedded in gateways and small footprint edge devices enabling local, real-time, analytics on the continuous streams of data coming from equipment, vehicles, systems, appliances, devices and sensors of all kinds. Working in conjunction with centralized analytic systems, it provides efficient and timely analytics across the whole IoT ecosystem: from the center to the edge.
  • 26. #JCConfTaiwan 2017 Apache Edgent ● Analyzes data and events at the device. When we analyze on the edge, we can: ● Reduce the amount of data transmitted to analytics servers ● Reduce the amount of data to be stored ● Uses analytics to determine when data needs to be sent to a back-end system for further analysis, action, or storage ● Shifts from sending a continuous flow of trivial data to the server to sending only essential and meaningful data as it occurs
  • 27. #JCConfTaiwan 2017 History ● IBM released IoT framework named Quarks that analyze data generated by IoT ● Apache Quarks was undergoing incubation ● Apache Quarks was renamed to Apache Edgent in July 2016 due to the name not being unique enough ● It is still in incubation now
  • 28. #JCConfTaiwan 2017 Feature ● Functional flow API for streaming analytics, such like Map, Flatmap, Filter, Aggregate, Split, Union, ... ● Connectors (MQTT, HTTP, Watson, JDBC, File, Kafka, Web Socket, custom) ● Bi-directional communications with the back- end ● Web based interface to view application graph and metrics ● Edgent uses Java Lambda expressions
  • 29. #JCConfTaiwan 2017 Environment ● Runs on edge device, Raspberry Pi or Android ● A simple Linux box on the edge can run Java 7/8 and Edgent ● Currently Java based, may support other languages as more developers get involved ● Version: 1.1.0-incubating (2017-03-20)
  • 30. #JCConfTaiwan 2017 Use Case ● IoT: Analyze data on distributed edge devices and mobile devices to: ● Reduce the cost of transmitting data ● Provide local feedback at the devices ● Embedded in an application server instance: Analyze application server error logs in real time without impacting network traffic ● Server rooms and machine rooms: Analyze machine health in real time without impacting network traffic or when bandwidth is limited
  • 32. #JCConfTaiwan 2017 Edgent provides APIs and a lightweight runtime to analyze streaming data at the edge
  • 34. #JCConfTaiwan 2017 Stream Analytics ● The fundamental building block of an Edgent application is a stream: a continuous sequence of tuples (messages, events, sensor readings, and so on) ● The Edgent API provides the ability to process or analyze each tuple as it appears on a stream, resulting in a derived stream
  • 35. #JCConfTaiwan 2017 Stream Analytics ● Streams are terminated using sink functions that can perform local device control or send information to centralized analytic systems through a message hub ● Edgent's primary API is functional where streams are sourced, transformed, analyzed or sinked though functions, typically represented as lambda expressions
  • 36. #JCConfTaiwan 2017 Temperature Sensor import java.util.Random; import org.apache.edgent.function.Supplier; public class TempSensor implements Supplier<Double> { double currentTemp = 65.0; Random rand; TempSensor() { rand = new Random(); } public Double get() { double newTemp = rand.nextGaussian() + currentTemp; currentTemp = newTemp; return currentTemp; } }
  • 37. #JCConfTaiwan 2017 Temperature Sensor Application import static java.util.concurrent.TimeUnit.MILLISECONDS; import org.apache.edgent.providers.direct.DirectProvider ; import org.apache.edgent.topology.*; public class TempSensorApplication { public static void main(String[] args) { TempSensor sensor = new TempSensor(); DirectProvider dp = new DirectProvider(); Topology topology = dp.newTopology(); TStream<Double> temp = topology.poll(sensor, 100, MILLISECONDS); TStream<Double> filtered = temp.filter(t -> t < 50 || t > 80); filtered.print();
  • 38. #JCConfTaiwan 2017 Stream Concept ● Filter: stream.filter(t -> t > 0) ● Split (List): stream.split(2, t -> t.intValue()) ● Union: stream1.union(stream2) ● Window: stream.last(5, SECONDS, t -> 0) ● Aggregate: window.aggregate((t, key) -> { return Collections.max(t); }) ● Batch: window.batch((t, key) -> { return t.size(); })
  • 39. #JCConfTaiwan 2017 Common Operation ● Topology: collection(Collection), events(Consumer), generate(Supplier), of(T...), strings(String...) ● TStream: asString(), filter, flatMap, join, last, map, peek, split, union ● TWindow: aggregate, batch