SlideShare a Scribd company logo
1 of 23
Download to read offline
1 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Apache NiFi MiNiFi C++ and the tale of
edgey stuff
Marc Parisi
phrocker@apache.org
@MrTheSegFault
2 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
BIO
marc(int*):
push rbp
mov rbp, rsp
mov QWORD PTR [rbp-8], rdi
mov QWORD PTR [rbp-8], 0
mov rax, QWORD PTR [rbp-8]
mov eax, DWORD PTR [rax]
pop rbp
ret
https://www.s.mrsegfault.com/jailbreak
3 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Agenda
⚫ IoT / Edge Breakdown
⚫ MiNIFI C++ deep dive
⚫ Use Cases
⚫ Demo if we're lucky
4 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
IoT Versus Edge
⚫ IoT
− Devices that share and collect data
⚫ Edge
− Data processing at edge of one’s network ( or the
internet ?)
⚫ One in the same?
5 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Explosion of Devices
6 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
IoT use cases
⚫ Connected car
⚫ Cell phone collection
⚫ Smart watches
⚫ Sensor readers
⚫ ...oh my
https://pixabay.com/en/network-iot-internet-of-things-782707/
7 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
From the device to the warehouse...
⚫ Devices → Warehouse/Regional
− Minimal grooming
− Apache NiFi regional and core
⚫ May not have compute capacity
− ‘Cause a toaster’s gonna toast, toast, toast, toast
[a]
8 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Edge use cases
⚫ Connected car
⚫ Cell phone collection
⚫ Smart watches
⚫ Sensor readers
⚫ ...OR
⚫ Custom devices
⚫ Robotics
⚫ …oh my?
https://pixabay.com/en/network-iot-internet-of-things-782707/
9 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Living on the Edge
⚫ Edge processing increases capacity
⚫ Edge devices can be ..
− Raspberry Pi
− Computer
− Smart Phone/Watch
10 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
IoT/Edge Constraints [1]
• Limited computing capability
• Limited power/network
• Restricted software library/platform availability
• Not frequently updated
• Competing standards/protocols
• Scalability
• Privacy & Security
11 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Apache NiFi MiNiFi C++
⚫ “...[C]omplimentary data collection approach
that supplements the core tenets of NiFi in
dataflow management, focusing on the
collection of data at the source of its creation”
⚫ Deliver data across a common platform of
extensions and components
⚫ NiFi empowers infrastructure
12 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
The NiFi Ecosystem
13 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Not just another NiFi
• Bi-Directional (Guaranteed) data transfer
• Data Provenance
• Resource Awareneness
• Small memory footprint
• Custom set of processors
• State Management/Command and Control
• Flow Updates
• Flow Metrics *No JVM
14 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Not just another NiFi
• Processors
• GetUSBCamera
• Tensorflow
• GetGPS
• Full list [4]
15 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Versace-ability
⚫ Agent/Library
⚫ Data collector/Sender
⚫ Edge/Analytic Processor
16 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Resource Awareness
• Battery Aware resource manager [3]
• Monitor consumption
• Adjust as needed
• Network manager (coming soon...)
17 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Command and Control
⚫ Command and control design [6,7]
⚫ Command line controller [8]
⚫ Update flow dynamically
⚫ Start/Stop components
⚫ Clear Queues/Repos
⚫ No UI
⚫ Remote/Local Admin
18 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
IoT/Collector Use Cases
⚫ Connected car -- Data collector
19 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Connected Car
20 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Connected Car
• Simple collection
• Tail File or gather GPS information
• Minimal Processing
21 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Edge use case
• Robotic controller
• Not typical use case
• Ferdinand
• OpenCV detects red in image *
• ListenHTTP receives movement commands
• Computation determines motor speed
through GPIO
• Computation for servo control
22 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Edge use case
23 © Hortonworks Inc. 2011 – 2016. All Rights Reserved
Bibliography
[1] https://www.statista.com/statistics/471264/iot-number-of-connected-devices-
worldwide/
[2] https://www.slideshare.net/Hadoop_Summit/apache-nifi-crash-course
[3] https://www.youtube.com/watch?v=1TMArQS7w40
[4] https://github.com/apache/nifi-minifi-cpp/blob/master/PROCESSORS.md
[5] https://blog.sasken.com/the-connected-car/
[6] https://cwiki.apache.org/confluence/display/MINIFI/MiNiFi+Command+and+Control
[7] https://cwiki.apache.org/confluence/display/MINIFI/C2+Design+Proposal
[8] https://github.com/apache/nifi-minifi-cpp/#managing-minfi-c-through-the-minifi-
controller
[9] https://youtu.be/a9EoCRYu39o
[a] https://www.youtube.com/watch?v=nfWlot6h_JM

More Related Content

Similar to Apache NiFi MiNiFi C++ and the tale of edgey stuff

Apache NiFi + Tensorflow + Hadoop: Big Data AI サンドイッチの作り方
Apache NiFi + Tensorflow + Hadoop:Big Data AI サンドイッチの作り方Apache NiFi + Tensorflow + Hadoop:Big Data AI サンドイッチの作り方
Apache NiFi + Tensorflow + Hadoop: Big Data AI サンドイッチの作り方HortonworksJapan
 
Building a modern end-to-end open source Big Data reference application
Building a modern end-to-end open source Big Data reference applicationBuilding a modern end-to-end open source Big Data reference application
Building a modern end-to-end open source Big Data reference applicationDataWorks Summit
 
Open Computer Vision with OpenCV, Apache NiFi, TensorFlow, Python
Open Computer Vision with OpenCV, Apache NiFi, TensorFlow, PythonOpen Computer Vision with OpenCV, Apache NiFi, TensorFlow, Python
Open Computer Vision with OpenCV, Apache NiFi, TensorFlow, PythonTimothy Spann
 
[Hortonworks] Future Of Data: Madrid - HDF & Data in motion
[Hortonworks] Future Of Data: Madrid - HDF & Data in motion[Hortonworks] Future Of Data: Madrid - HDF & Data in motion
[Hortonworks] Future Of Data: Madrid - HDF & Data in motionRaúl Marín
 
Dataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San Jose
Dataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San JoseDataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San Jose
Dataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San JoseAldrin Piri
 
Data at Scales and the Values of Starting Small with Apache NiFi & MiNiFi
Data at Scales and the Values of Starting Small with Apache NiFi & MiNiFiData at Scales and the Values of Starting Small with Apache NiFi & MiNiFi
Data at Scales and the Values of Starting Small with Apache NiFi & MiNiFiAldrin Piri
 
Intelligently Collecting Data at the Edge – Intro to Apache MiNiFi
Intelligently Collecting Data at the Edge – Intro to Apache MiNiFiIntelligently Collecting Data at the Edge – Intro to Apache MiNiFi
Intelligently Collecting Data at the Edge – Intro to Apache MiNiFiDataWorks Summit
 
Introduction to Apache NiFi - Seattle Scalability Meetup
Introduction to Apache NiFi - Seattle Scalability MeetupIntroduction to Apache NiFi - Seattle Scalability Meetup
Introduction to Apache NiFi - Seattle Scalability MeetupSaptak Sen
 
IoT Edge Processing with Apache NiFi and MiniFi and Apache MXNet for IoT NY 2018
IoT Edge Processing with Apache NiFi and MiniFi and Apache MXNet for IoT NY 2018IoT Edge Processing with Apache NiFi and MiniFi and Apache MXNet for IoT NY 2018
IoT Edge Processing with Apache NiFi and MiniFi and Apache MXNet for IoT NY 2018Timothy Spann
 
Enterprise IIoT Edge Processing with Apache NiFi
Enterprise IIoT Edge Processing with Apache NiFiEnterprise IIoT Edge Processing with Apache NiFi
Enterprise IIoT Edge Processing with Apache NiFiTimothy Spann
 
Apache NiFi Crash Course - San Jose Hadoop Summit
Apache NiFi Crash Course - San Jose Hadoop SummitApache NiFi Crash Course - San Jose Hadoop Summit
Apache NiFi Crash Course - San Jose Hadoop SummitAldrin Piri
 
The Avant-garde of Apache NiFi
The Avant-garde of Apache NiFiThe Avant-garde of Apache NiFi
The Avant-garde of Apache NiFiJoe Percivall
 
Unlocking insights in streaming data
Unlocking insights in streaming dataUnlocking insights in streaming data
Unlocking insights in streaming dataCarolyn Duby
 
HDF Powered by Apache NiFi Introduction
HDF Powered by Apache NiFi IntroductionHDF Powered by Apache NiFi Introduction
HDF Powered by Apache NiFi IntroductionMilind Pandit
 
The First Mile – Edge and IoT Data Collection with Apache NiFi and MiNiFi
The First Mile – Edge and IoT Data Collection with Apache NiFi and MiNiFiThe First Mile – Edge and IoT Data Collection with Apache NiFi and MiNiFi
The First Mile – Edge and IoT Data Collection with Apache NiFi and MiNiFiDataWorks Summit
 
Make Streaming IoT Analytics Work for You
Make Streaming IoT Analytics Work for YouMake Streaming IoT Analytics Work for You
Make Streaming IoT Analytics Work for YouHortonworks
 
Big Data Day LA 2016/ Big Data Track - Building scalable enterprise data flow...
Big Data Day LA 2016/ Big Data Track - Building scalable enterprise data flow...Big Data Day LA 2016/ Big Data Track - Building scalable enterprise data flow...
Big Data Day LA 2016/ Big Data Track - Building scalable enterprise data flow...Data Con LA
 
Using Spark Streaming and NiFi for the Next Generation of ETL in the Enterprise
Using Spark Streaming and NiFi for the Next Generation of ETL in the EnterpriseUsing Spark Streaming and NiFi for the Next Generation of ETL in the Enterprise
Using Spark Streaming and NiFi for the Next Generation of ETL in the EnterpriseDataWorks Summit
 

Similar to Apache NiFi MiNiFi C++ and the tale of edgey stuff (20)

Building a Smarter Home with Apache NiFi and Spark
Building a Smarter Home with Apache NiFi and SparkBuilding a Smarter Home with Apache NiFi and Spark
Building a Smarter Home with Apache NiFi and Spark
 
Apache NiFi + Tensorflow + Hadoop: Big Data AI サンドイッチの作り方
Apache NiFi + Tensorflow + Hadoop:Big Data AI サンドイッチの作り方Apache NiFi + Tensorflow + Hadoop:Big Data AI サンドイッチの作り方
Apache NiFi + Tensorflow + Hadoop: Big Data AI サンドイッチの作り方
 
Building a modern end-to-end open source Big Data reference application
Building a modern end-to-end open source Big Data reference applicationBuilding a modern end-to-end open source Big Data reference application
Building a modern end-to-end open source Big Data reference application
 
Open Computer Vision with OpenCV, Apache NiFi, TensorFlow, Python
Open Computer Vision with OpenCV, Apache NiFi, TensorFlow, PythonOpen Computer Vision with OpenCV, Apache NiFi, TensorFlow, Python
Open Computer Vision with OpenCV, Apache NiFi, TensorFlow, Python
 
[Hortonworks] Future Of Data: Madrid - HDF & Data in motion
[Hortonworks] Future Of Data: Madrid - HDF & Data in motion[Hortonworks] Future Of Data: Madrid - HDF & Data in motion
[Hortonworks] Future Of Data: Madrid - HDF & Data in motion
 
Dataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San Jose
Dataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San JoseDataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San Jose
Dataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San Jose
 
Data at Scales and the Values of Starting Small with Apache NiFi & MiNiFi
Data at Scales and the Values of Starting Small with Apache NiFi & MiNiFiData at Scales and the Values of Starting Small with Apache NiFi & MiNiFi
Data at Scales and the Values of Starting Small with Apache NiFi & MiNiFi
 
Intelligently Collecting Data at the Edge – Intro to Apache MiNiFi
Intelligently Collecting Data at the Edge – Intro to Apache MiNiFiIntelligently Collecting Data at the Edge – Intro to Apache MiNiFi
Intelligently Collecting Data at the Edge – Intro to Apache MiNiFi
 
Introduction to Apache NiFi - Seattle Scalability Meetup
Introduction to Apache NiFi - Seattle Scalability MeetupIntroduction to Apache NiFi - Seattle Scalability Meetup
Introduction to Apache NiFi - Seattle Scalability Meetup
 
IoT Edge Processing with Apache NiFi and MiniFi and Apache MXNet for IoT NY 2018
IoT Edge Processing with Apache NiFi and MiniFi and Apache MXNet for IoT NY 2018IoT Edge Processing with Apache NiFi and MiniFi and Apache MXNet for IoT NY 2018
IoT Edge Processing with Apache NiFi and MiniFi and Apache MXNet for IoT NY 2018
 
Enterprise IIoT Edge Processing with Apache NiFi
Enterprise IIoT Edge Processing with Apache NiFiEnterprise IIoT Edge Processing with Apache NiFi
Enterprise IIoT Edge Processing with Apache NiFi
 
Apache NiFi Crash Course - San Jose Hadoop Summit
Apache NiFi Crash Course - San Jose Hadoop SummitApache NiFi Crash Course - San Jose Hadoop Summit
Apache NiFi Crash Course - San Jose Hadoop Summit
 
The Avant-garde of Apache NiFi
The Avant-garde of Apache NiFiThe Avant-garde of Apache NiFi
The Avant-garde of Apache NiFi
 
The Avant-garde of Apache NiFi
The Avant-garde of Apache NiFiThe Avant-garde of Apache NiFi
The Avant-garde of Apache NiFi
 
Unlocking insights in streaming data
Unlocking insights in streaming dataUnlocking insights in streaming data
Unlocking insights in streaming data
 
HDF Powered by Apache NiFi Introduction
HDF Powered by Apache NiFi IntroductionHDF Powered by Apache NiFi Introduction
HDF Powered by Apache NiFi Introduction
 
The First Mile – Edge and IoT Data Collection with Apache NiFi and MiNiFi
The First Mile – Edge and IoT Data Collection with Apache NiFi and MiNiFiThe First Mile – Edge and IoT Data Collection with Apache NiFi and MiNiFi
The First Mile – Edge and IoT Data Collection with Apache NiFi and MiNiFi
 
Make Streaming IoT Analytics Work for You
Make Streaming IoT Analytics Work for YouMake Streaming IoT Analytics Work for You
Make Streaming IoT Analytics Work for You
 
Big Data Day LA 2016/ Big Data Track - Building scalable enterprise data flow...
Big Data Day LA 2016/ Big Data Track - Building scalable enterprise data flow...Big Data Day LA 2016/ Big Data Track - Building scalable enterprise data flow...
Big Data Day LA 2016/ Big Data Track - Building scalable enterprise data flow...
 
Using Spark Streaming and NiFi for the Next Generation of ETL in the Enterprise
Using Spark Streaming and NiFi for the Next Generation of ETL in the EnterpriseUsing Spark Streaming and NiFi for the Next Generation of ETL in the Enterprise
Using Spark Streaming and NiFi for the Next Generation of ETL in the Enterprise
 

Recently uploaded

Electromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxElectromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxNANDHAKUMARA10
 
Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257subhasishdas79
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...Amil baba
 
Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxhublikarsn
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaOmar Fathy
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxMustafa Ahmed
 
8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessorAshwiniTodkar4
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...HenryBriggs2
 
Introduction to Geographic Information Systems
Introduction to Geographic Information SystemsIntroduction to Geographic Information Systems
Introduction to Geographic Information SystemsAnge Felix NSANZIYERA
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiessarkmank1
 
Computer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesComputer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesChandrakantDivate1
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARKOUSTAV SARKAR
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"mphochane1998
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwaitjaanualu31
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.Kamal Acharya
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayEpec Engineered Technologies
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdfKamal Acharya
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsvanyagupta248
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdfKamal Acharya
 

Recently uploaded (20)

Electromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxElectromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptx
 
Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 
Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptx
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptx
 
8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Introduction to Geographic Information Systems
Introduction to Geographic Information SystemsIntroduction to Geographic Information Systems
Introduction to Geographic Information Systems
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
Computer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesComputer Graphics Introduction To Curves
Computer Graphics Introduction To Curves
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdf
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 

Apache NiFi MiNiFi C++ and the tale of edgey stuff

  • 1. 1 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Apache NiFi MiNiFi C++ and the tale of edgey stuff Marc Parisi phrocker@apache.org @MrTheSegFault
  • 2. 2 © Hortonworks Inc. 2011 – 2016. All Rights Reserved BIO marc(int*): push rbp mov rbp, rsp mov QWORD PTR [rbp-8], rdi mov QWORD PTR [rbp-8], 0 mov rax, QWORD PTR [rbp-8] mov eax, DWORD PTR [rax] pop rbp ret https://www.s.mrsegfault.com/jailbreak
  • 3. 3 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Agenda ⚫ IoT / Edge Breakdown ⚫ MiNIFI C++ deep dive ⚫ Use Cases ⚫ Demo if we're lucky
  • 4. 4 © Hortonworks Inc. 2011 – 2016. All Rights Reserved IoT Versus Edge ⚫ IoT − Devices that share and collect data ⚫ Edge − Data processing at edge of one’s network ( or the internet ?) ⚫ One in the same?
  • 5. 5 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Explosion of Devices
  • 6. 6 © Hortonworks Inc. 2011 – 2016. All Rights Reserved IoT use cases ⚫ Connected car ⚫ Cell phone collection ⚫ Smart watches ⚫ Sensor readers ⚫ ...oh my https://pixabay.com/en/network-iot-internet-of-things-782707/
  • 7. 7 © Hortonworks Inc. 2011 – 2016. All Rights Reserved From the device to the warehouse... ⚫ Devices → Warehouse/Regional − Minimal grooming − Apache NiFi regional and core ⚫ May not have compute capacity − ‘Cause a toaster’s gonna toast, toast, toast, toast [a]
  • 8. 8 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Edge use cases ⚫ Connected car ⚫ Cell phone collection ⚫ Smart watches ⚫ Sensor readers ⚫ ...OR ⚫ Custom devices ⚫ Robotics ⚫ …oh my? https://pixabay.com/en/network-iot-internet-of-things-782707/
  • 9. 9 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Living on the Edge ⚫ Edge processing increases capacity ⚫ Edge devices can be .. − Raspberry Pi − Computer − Smart Phone/Watch
  • 10. 10 © Hortonworks Inc. 2011 – 2016. All Rights Reserved IoT/Edge Constraints [1] • Limited computing capability • Limited power/network • Restricted software library/platform availability • Not frequently updated • Competing standards/protocols • Scalability • Privacy & Security
  • 11. 11 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Apache NiFi MiNiFi C++ ⚫ “...[C]omplimentary data collection approach that supplements the core tenets of NiFi in dataflow management, focusing on the collection of data at the source of its creation” ⚫ Deliver data across a common platform of extensions and components ⚫ NiFi empowers infrastructure
  • 12. 12 © Hortonworks Inc. 2011 – 2016. All Rights Reserved The NiFi Ecosystem
  • 13. 13 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Not just another NiFi • Bi-Directional (Guaranteed) data transfer • Data Provenance • Resource Awareneness • Small memory footprint • Custom set of processors • State Management/Command and Control • Flow Updates • Flow Metrics *No JVM
  • 14. 14 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Not just another NiFi • Processors • GetUSBCamera • Tensorflow • GetGPS • Full list [4]
  • 15. 15 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Versace-ability ⚫ Agent/Library ⚫ Data collector/Sender ⚫ Edge/Analytic Processor
  • 16. 16 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Resource Awareness • Battery Aware resource manager [3] • Monitor consumption • Adjust as needed • Network manager (coming soon...)
  • 17. 17 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Command and Control ⚫ Command and control design [6,7] ⚫ Command line controller [8] ⚫ Update flow dynamically ⚫ Start/Stop components ⚫ Clear Queues/Repos ⚫ No UI ⚫ Remote/Local Admin
  • 18. 18 © Hortonworks Inc. 2011 – 2016. All Rights Reserved IoT/Collector Use Cases ⚫ Connected car -- Data collector
  • 19. 19 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Connected Car
  • 20. 20 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Connected Car • Simple collection • Tail File or gather GPS information • Minimal Processing
  • 21. 21 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Edge use case • Robotic controller • Not typical use case • Ferdinand • OpenCV detects red in image * • ListenHTTP receives movement commands • Computation determines motor speed through GPIO • Computation for servo control
  • 22. 22 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Edge use case
  • 23. 23 © Hortonworks Inc. 2011 – 2016. All Rights Reserved Bibliography [1] https://www.statista.com/statistics/471264/iot-number-of-connected-devices- worldwide/ [2] https://www.slideshare.net/Hadoop_Summit/apache-nifi-crash-course [3] https://www.youtube.com/watch?v=1TMArQS7w40 [4] https://github.com/apache/nifi-minifi-cpp/blob/master/PROCESSORS.md [5] https://blog.sasken.com/the-connected-car/ [6] https://cwiki.apache.org/confluence/display/MINIFI/MiNiFi+Command+and+Control [7] https://cwiki.apache.org/confluence/display/MINIFI/C2+Design+Proposal [8] https://github.com/apache/nifi-minifi-cpp/#managing-minfi-c-through-the-minifi- controller [9] https://youtu.be/a9EoCRYu39o [a] https://www.youtube.com/watch?v=nfWlot6h_JM