Apache Edgent is an open source programming model and runtime for analyzing data and events at edge devices. It allows processing data at the edge to save money by only sending essential data from devices. Edgent provides connectors for various data sources and sinks and can be used for IoT, embedded in application servers, and for monitoring machines. The edge refers to devices, gateways, and sensors at the network boundary that provide potential data. Edgent applications follow a common structure of getting a provider, creating a topology, composing processing graphs, and submitting it for execution.
1. What Is Apache Edgent ?
● An open source programming model
● Runtime for edge devices
● Analyze data and events at the device
● Open source / Apache 2.0 license
● Save money by analyzing data at the edge
● Only send essential data from the edge
● Edgent pre processes edge based data
2. Apache Edgent Use Cases
● When cound Edgent be used ?
● IOT – analyze data at the edge i.e.
– Distributed devices
– Mobile devices
– Process data at the device
– Only transmit post processed data
● Embed in application server
– Process logs at source
● Server rooms and machine rooms
– Monitor machines at source
3. What Is The Edge ?
● The edge of the data network
– Devices
– Gateways
– Equipment
– Vehicles
– Systems
– Appliances
– Sensors
● All IOT devices at the edge of the network
● Providing potential data for the center
4. Edgent Connections
● Edgent provides connectors
● For data sources and data sinks, available for
– MQTT
– HTTP
– JDBC
– File
– Apache Kafka
– IBM Watson IoT Platform
● Edgent is extensible, you can create connectors
6. Edgent Applications
● Edgent is an open source programming model
● Use the Edgent API to develop applications
● To process data streams
● Basic Edgent Applications follow a common structure
– Get a provider
– Create the topology
– Compose its processing graph
– Submit the topology for execution
● See the next slide for code sample
8. Edgent Console
● Edgent supplies a console
● Run as an HttpServer within the application
● Can be used to
– Visualise topology
– Monitor flowing data
● Topology oplets and stream tags are visible
● The console URL is generated by application build i.e.
– http://host_name:port_number/console
10. Edgent Cookbook
● Edgent provides an API Cookbook, see
● https://edgent.incubator.apache.org/recipes/recipe_hello_edgent.html
● From writing a first function to detecting sensors
● Splitting and combining streams
● Using configuration files
● Using filters
● Analytics processing
● Writing connectors
11. Available Books
● See “Big Data Made Easy”
– Apress Jan 2015
●
See “Mastering Apache Spark”
– Packt Oct 2015
●
See “Complete Guide to Open Source Big Data Stack
– “Apress Jan 2018”
● Find the author on Amazon
– www.amazon.com/Michael-Frampton/e/B00NIQDOOM/
●
Connect on LinkedIn
– www.linkedin.com/in/mike-frampton-38563020
12. Connect
● Feel free to connect on LinkedIn
– www.linkedin.com/in/mike-frampton-38563020
● See my open source blog at
– open-source-systems.blogspot.com/
● I am always interested in
– New technology
– Opportunities
– Technology based issues
– Big data integration