SlideShare a Scribd company logo
AUTONOMIC COMPUTING MEETUP
MARCH 6, 2017
LOS ANGELES
DATAFLOW PROGRAMMING AND REACTIVE STATE MACHINES
Peter Lee @ Corenova Technologies
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
INTELLIGENCE IS
THE ABILITY TO
ADAPT TO CHANGE.
Stephen Hawking
WHAT IS AN AUTONOMIC SYSTEM?
▸ An approach to enable systems to manage themselves without
direct human intervention
▸ Inspired by human autonomic nervous system which controls
important bodily functions without conscious intervention
▸ A methodology for reducing the complexity of maintaining
distributed systems
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
THE AUTONOMIC COMPUTING MODEL
▸ A fundamental building block of an autonomic system is
the sensing capability (Sensors Si), which enables the
system to observe its external operational context.
▸ Inherent to an autonomic system is the knowledge of
the Purpose (intention) and the Know-how to operate
itself (e.g., bootstrapping, configuration knowledge,
interpretation of sensory data, etc.) without external
intervention.
▸ The actual operation of the autonomic system is
dictated by the Logic, which is responsible for making
the right decisions to serve its Purpose, and influence by
the observation of the operational context (based on
the sensor input).
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
WHAT IS DATAFLOW PROGRAMMING?
▸ A programming paradigm that models a program as a directed graph of the
data flowing between operations, thus implementing dataflow principles and
architecture.
▸ Emphasizes the movement of data and models programs as a series of
connections. Explicitly defined inputs and outputs connect operations, which
function like black boxes. An operation runs as soon as all of its inputs
become valid. Thus, dataflow languages are inherently parallel and can work
well in large, decentralized systems.
▸ Dataflow Programming - Concept, Languages and Applications
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
BASIC DATAFLOW MODELS
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
OUTPUT BINPUT A f
OUTPUT D
INPUT B
f
INPUT C
INPUT D f
OUTPUT E
OUTPUT F
REACTOR FUNCTIONS
ONE-TO-ONE
MANY-TO-ONE
ONE-TO-MANY
INPUT F
f
INPUT G
OUTPUT H
OUTPUT I
MANY-TO-MANY
IMPERATIVE VS. DATAFLOW PROGRAMMING
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
MODULE/SUPERAGENT
HTTP/REQUEST/GET/URL
HTTP/RESPONSE
REQUIRE f
var request = require(“superagent”);
request.get(“http://www.google.com")
request.end((err, response) => {
// logic to deal with response
})
f
IMPERATIVE JAVASCRIPT CODE
require “superagent"
http/request/get/url “http://www.google.com"
DATAFLOW TRIGGERS
synchronous, must
return expected module
asynchronous, must
supply callback function asynchronous, sequence of
triggers doesn’t matter
IMPERATIVE EXAMPLE: REACTING TO ENVIRONMENT
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
try {
var request = require(“superagent”);
makeRequest(request, “http://www.google.com")
} catch (err) {
var npm = require(“npm”);
npm.load({}, (err, loaded) => {
npm.install(“superagent”, (err, installed) => {
// deal with error, otherwise continue
let request = require(“superagent”)
makeRequest(request, “http://www.google.com")
}
})
}
IMPERATIVE JAVASCRIPT CODE
function makeRequest(request, url) {
request.get(url)
request.end((err, response) => {
// logic to deal with response
})
}
nested async callbacks,
still need to deal with
errors at each level
break out common
function to deal with
multiple entry points for
execution
Logic to deal with missing library dependency, “superagent”
DATAFLOW EXAMPLE: REACTING TO ENVIRONMENT
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
require “npm”
require “superagent”
http/request/get/url “http://www.google.com"
DATAFLOW TRIGGERS
MODULE/NPM
NPM/INSTALL
REQUIRE
MODULE/SUPERAGENT
HTTP/REQUEST/GET/URL
HTTP/RESPONSEf
f f
NPM/INSTALLEDf
NPM/LOADED
additional dataflow to
support NPM workflows
WHAT IS A DATA PIPELINE?
▸ In computing, a pipeline is a set of data processing elements
connected in series, where the output of one element is the input
of the next one.
▸ Software pipelines, where commands can be written where the
output of one operation is automatically fed to the next, following
operation. The Unix system call pipe is a classic example of this
concept, although other operating systems do support pipes as
well.
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
TRADITIONAL DATA PIPELINE
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
FORMAT BFORMAT A f FORMAT Cf
▸ All data chunks of format A runs through a processing node (which internally
buffers incoming/outgoing chunks) and generates stream of format B chunks
▸ All data chunks of format B then runs through another processing node which
generates a stream of format C chunks
▸ You can create a sequence of transforms to achieve desired final outcome
DATAFLOW PIPELINE
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
OUTPUT BINPUT A
OUTPUT Cf
f OUTPUT EINPUT C
OUTPUT FINPUT D
f
INPUT F OUTPUT D
INPUT B
f
CIRCULAR FEEDBACK FLOW!
INPUT OUTPUT
DISTRIBUTED DATAFLOW PIPELINE: MICRO-SERVICES
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
OUTPUT BINPUT A
OUTPUT Cf
f OUTPUT EINPUT C
OUTPUT FINPUT D
f
INPUT B
ANY DATA f SOCKET ANY DATAfSOCKET
▸ You can build data pipelines across any instance of the Flow running anywhere!
DISTRIBUTED DATAFLOW PIPELINE
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
CREATIVITY IS JUST
CONNECTING THINGS.
Steve Jobs
KOS: A DATAFLOW STREAMING FRAMEWORK FOR CREATING AWESOME DATA PIPELINES
LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
▸ JavaScript (Node.js and the web browser)
▸ Open-Source License
▸ https://github.com/corenova/kos
LET’S CONNECT THINGS!
THANKS FOR COMING!
SEE YOU NEXT TIME
LA Autonomic Computing Meetup

More Related Content

PDF
Autonomic Computing - Making Things Smarter
PPT
Autonomic computing
PPTX
10 phones for website
PDF
Global telecom devices 2012
PPTX
QUANTUM COMP 22
PPTX
I phone 5
PDF
#fremtidsledelse #sosialemedier
Autonomic Computing - Making Things Smarter
Autonomic computing
10 phones for website
Global telecom devices 2012
QUANTUM COMP 22
I phone 5
#fremtidsledelse #sosialemedier

Viewers also liked (10)

PDF
Sitater om ledelse fra 8 norske lederprofiler
DOCX
Autonomic computing seminar documentation
PPTX
Nanotechnology ppt
PPT
From broadcast to networks
PPTX
Drying
PDF
Autonomic Computing: Vision or Reality - Presentation
PPTX
Nanotechnology ppt
PPTX
3 Follow-up Email Templates That Are Pretty Hard for the Hiring Manager to Ig...
PPT
Autonomic Computing (Basics) Presentation
PDF
Transforming HR Through Technology
Sitater om ledelse fra 8 norske lederprofiler
Autonomic computing seminar documentation
Nanotechnology ppt
From broadcast to networks
Drying
Autonomic Computing: Vision or Reality - Presentation
Nanotechnology ppt
3 Follow-up Email Templates That Are Pretty Hard for the Hiring Manager to Ig...
Autonomic Computing (Basics) Presentation
Transforming HR Through Technology
Ad

Similar to Autonomic Computing - Dataflow Programming and Reactive State Machines (20)

PPTX
Autonomic computing.pptx
PDF
Autonomic computing-18th may dhiren shah prachi shah
PPT
AutonomicComputing
PDF
Near realtime analytics - technology choice (@pavlobaron)
PPT
Autonomics Computing (with some of Adaptive Systems) and Requirements Enginee...
PPTX
cloud computing ppt
PPTX
PDF
Extending open up for autonomic computing english_finalversionupload 6
PDF
Academic Course: 03 Autonomic Multi-Agent Systems
PDF
Reactive Data Centric Architectures with Vortex, Spark and ReactiveX
PPTX
Software Architectures, Week 5 - Advanced Architectures
PDF
PDF
Reactive: Programming -> Systems -> Architecture
PDF
Advances in Network Embedded Management and Applications Alexander Clemm
PDF
Advances in Network Embedded Management and Applications Alexander Clemm
PDF
DevOps Fest 2020. Даніель Яворович. Data pipelines: building an efficient ins...
PPT
Autonomic Computing by- Sandeep Jadhav
PDF
Autonomic Computing And Networking 2009th Edition Mieso Denko
PDF
The Changing Face of Government IT
PDF
MaLeNe2021-Evolving_Autonomous_Networks-L_Ciavaglia.pdf
Autonomic computing.pptx
Autonomic computing-18th may dhiren shah prachi shah
AutonomicComputing
Near realtime analytics - technology choice (@pavlobaron)
Autonomics Computing (with some of Adaptive Systems) and Requirements Enginee...
cloud computing ppt
Extending open up for autonomic computing english_finalversionupload 6
Academic Course: 03 Autonomic Multi-Agent Systems
Reactive Data Centric Architectures with Vortex, Spark and ReactiveX
Software Architectures, Week 5 - Advanced Architectures
Reactive: Programming -> Systems -> Architecture
Advances in Network Embedded Management and Applications Alexander Clemm
Advances in Network Embedded Management and Applications Alexander Clemm
DevOps Fest 2020. Даніель Яворович. Data pipelines: building an efficient ins...
Autonomic Computing by- Sandeep Jadhav
Autonomic Computing And Networking 2009th Edition Mieso Denko
The Changing Face of Government IT
MaLeNe2021-Evolving_Autonomous_Networks-L_Ciavaglia.pdf
Ad

Recently uploaded (20)

PPTX
Modelling in Business Intelligence , information system
PPTX
importance of Data-Visualization-in-Data-Science. for mba studnts
PDF
Business Analytics and business intelligence.pdf
PDF
Data Engineering Interview Questions & Answers Cloud Data Stacks (AWS, Azure,...
PDF
Introduction to the R Programming Language
PPTX
(Ali Hamza) Roll No: (F24-BSCS-1103).pptx
PPTX
Introduction-to-Cloud-ComputingFinal.pptx
PDF
REAL ILLUMINATI AGENT IN KAMPALA UGANDA CALL ON+256765750853/0705037305
PPTX
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
PPTX
QUANTUM_COMPUTING_AND_ITS_POTENTIAL_APPLICATIONS[2].pptx
PDF
Galatica Smart Energy Infrastructure Startup Pitch Deck
PPTX
climate analysis of Dhaka ,Banglades.pptx
PPT
ISS -ESG Data flows What is ESG and HowHow
PDF
[EN] Industrial Machine Downtime Prediction
PDF
annual-report-2024-2025 original latest.
PPTX
A Complete Guide to Streamlining Business Processes
PDF
Capcut Pro Crack For PC Latest Version {Fully Unlocked 2025}
PDF
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...
PPTX
STERILIZATION AND DISINFECTION-1.ppthhhbx
PPTX
Data_Analytics_and_PowerBI_Presentation.pptx
Modelling in Business Intelligence , information system
importance of Data-Visualization-in-Data-Science. for mba studnts
Business Analytics and business intelligence.pdf
Data Engineering Interview Questions & Answers Cloud Data Stacks (AWS, Azure,...
Introduction to the R Programming Language
(Ali Hamza) Roll No: (F24-BSCS-1103).pptx
Introduction-to-Cloud-ComputingFinal.pptx
REAL ILLUMINATI AGENT IN KAMPALA UGANDA CALL ON+256765750853/0705037305
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
QUANTUM_COMPUTING_AND_ITS_POTENTIAL_APPLICATIONS[2].pptx
Galatica Smart Energy Infrastructure Startup Pitch Deck
climate analysis of Dhaka ,Banglades.pptx
ISS -ESG Data flows What is ESG and HowHow
[EN] Industrial Machine Downtime Prediction
annual-report-2024-2025 original latest.
A Complete Guide to Streamlining Business Processes
Capcut Pro Crack For PC Latest Version {Fully Unlocked 2025}
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...
STERILIZATION AND DISINFECTION-1.ppthhhbx
Data_Analytics_and_PowerBI_Presentation.pptx

Autonomic Computing - Dataflow Programming and Reactive State Machines

  • 1. AUTONOMIC COMPUTING MEETUP MARCH 6, 2017 LOS ANGELES
  • 2. DATAFLOW PROGRAMMING AND REACTIVE STATE MACHINES Peter Lee @ Corenova Technologies LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
  • 3. INTELLIGENCE IS THE ABILITY TO ADAPT TO CHANGE. Stephen Hawking
  • 4. WHAT IS AN AUTONOMIC SYSTEM? ▸ An approach to enable systems to manage themselves without direct human intervention ▸ Inspired by human autonomic nervous system which controls important bodily functions without conscious intervention ▸ A methodology for reducing the complexity of maintaining distributed systems LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
  • 5. THE AUTONOMIC COMPUTING MODEL ▸ A fundamental building block of an autonomic system is the sensing capability (Sensors Si), which enables the system to observe its external operational context. ▸ Inherent to an autonomic system is the knowledge of the Purpose (intention) and the Know-how to operate itself (e.g., bootstrapping, configuration knowledge, interpretation of sensory data, etc.) without external intervention. ▸ The actual operation of the autonomic system is dictated by the Logic, which is responsible for making the right decisions to serve its Purpose, and influence by the observation of the operational context (based on the sensor input). LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
  • 6. WHAT IS DATAFLOW PROGRAMMING? ▸ A programming paradigm that models a program as a directed graph of the data flowing between operations, thus implementing dataflow principles and architecture. ▸ Emphasizes the movement of data and models programs as a series of connections. Explicitly defined inputs and outputs connect operations, which function like black boxes. An operation runs as soon as all of its inputs become valid. Thus, dataflow languages are inherently parallel and can work well in large, decentralized systems. ▸ Dataflow Programming - Concept, Languages and Applications LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
  • 7. BASIC DATAFLOW MODELS LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017 OUTPUT BINPUT A f OUTPUT D INPUT B f INPUT C INPUT D f OUTPUT E OUTPUT F REACTOR FUNCTIONS ONE-TO-ONE MANY-TO-ONE ONE-TO-MANY INPUT F f INPUT G OUTPUT H OUTPUT I MANY-TO-MANY
  • 8. IMPERATIVE VS. DATAFLOW PROGRAMMING LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017 MODULE/SUPERAGENT HTTP/REQUEST/GET/URL HTTP/RESPONSE REQUIRE f var request = require(“superagent”); request.get(“http://www.google.com") request.end((err, response) => { // logic to deal with response }) f IMPERATIVE JAVASCRIPT CODE require “superagent" http/request/get/url “http://www.google.com" DATAFLOW TRIGGERS synchronous, must return expected module asynchronous, must supply callback function asynchronous, sequence of triggers doesn’t matter
  • 9. IMPERATIVE EXAMPLE: REACTING TO ENVIRONMENT LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017 try { var request = require(“superagent”); makeRequest(request, “http://www.google.com") } catch (err) { var npm = require(“npm”); npm.load({}, (err, loaded) => { npm.install(“superagent”, (err, installed) => { // deal with error, otherwise continue let request = require(“superagent”) makeRequest(request, “http://www.google.com") } }) } IMPERATIVE JAVASCRIPT CODE function makeRequest(request, url) { request.get(url) request.end((err, response) => { // logic to deal with response }) } nested async callbacks, still need to deal with errors at each level break out common function to deal with multiple entry points for execution Logic to deal with missing library dependency, “superagent”
  • 10. DATAFLOW EXAMPLE: REACTING TO ENVIRONMENT LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017 require “npm” require “superagent” http/request/get/url “http://www.google.com" DATAFLOW TRIGGERS MODULE/NPM NPM/INSTALL REQUIRE MODULE/SUPERAGENT HTTP/REQUEST/GET/URL HTTP/RESPONSEf f f NPM/INSTALLEDf NPM/LOADED additional dataflow to support NPM workflows
  • 11. WHAT IS A DATA PIPELINE? ▸ In computing, a pipeline is a set of data processing elements connected in series, where the output of one element is the input of the next one. ▸ Software pipelines, where commands can be written where the output of one operation is automatically fed to the next, following operation. The Unix system call pipe is a classic example of this concept, although other operating systems do support pipes as well. LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
  • 12. TRADITIONAL DATA PIPELINE LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017 FORMAT BFORMAT A f FORMAT Cf ▸ All data chunks of format A runs through a processing node (which internally buffers incoming/outgoing chunks) and generates stream of format B chunks ▸ All data chunks of format B then runs through another processing node which generates a stream of format C chunks ▸ You can create a sequence of transforms to achieve desired final outcome
  • 13. DATAFLOW PIPELINE LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017 OUTPUT BINPUT A OUTPUT Cf f OUTPUT EINPUT C OUTPUT FINPUT D f INPUT F OUTPUT D INPUT B f CIRCULAR FEEDBACK FLOW! INPUT OUTPUT
  • 14. DISTRIBUTED DATAFLOW PIPELINE: MICRO-SERVICES LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017 OUTPUT BINPUT A OUTPUT Cf f OUTPUT EINPUT C OUTPUT FINPUT D f INPUT B ANY DATA f SOCKET ANY DATAfSOCKET ▸ You can build data pipelines across any instance of the Flow running anywhere!
  • 15. DISTRIBUTED DATAFLOW PIPELINE LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017
  • 16. CREATIVITY IS JUST CONNECTING THINGS. Steve Jobs
  • 17. KOS: A DATAFLOW STREAMING FRAMEWORK FOR CREATING AWESOME DATA PIPELINES LA AUTONOMIC COMPUTING MEETUP #3 - MARCH 6, 2017 ▸ JavaScript (Node.js and the web browser) ▸ Open-Source License ▸ https://github.com/corenova/kos
  • 19. THANKS FOR COMING! SEE YOU NEXT TIME LA Autonomic Computing Meetup