FogFlow
FogFlow is an IoT edge computing framework to automatically orchestrate dynamic data processing flows over cloud and edges driven by context, including system context on the available system resources from all layers, data context on the registered metadata of all available data entities, and also usage context on the expected QoS defined by users.
This project is part of FIWARE. For more information check the FIWARE Catalogue entry for Processing.
- ใใฎใใญใฅใกใณใใฏๆฅๆฌ่ชใงใใ่ฆงใใใ ใใพใใ
๐ Documentation | ๐ Academy | ๐ณ Docker Hub | ๐ฏ Roadmap |
---|
Content
Background
FogFlow is a standard-based data processing framework for service providers to easily program and manage IoT services over cloud and edges. Below are the motivation, functionalities, and benefits of FogFlow.
-
Why do we need FogFlow?
- the cost of a cloud-only solution is too high to run a large scale IoT system with >1000 geo-distributed devices
- many IoT services require fast response time, such as <10ms end-to-end latency
- service providers are facing huge complexity and cost to fast design and deploy their IoT services in a cloud-edge environment
- business demands are changing fast over time and service providers need to try out and release any new services over their shared cloud-edge infrastructure at a fast speed
- lack of programming model to fast design and deploy IoT services over geo-distributed ICT infrastructure
- lack of interoperability and openness to share and reuse data and dervied results across various applications
-
What does FogFlow provide?
- efficient programming model: programming a service is like building lego blocks
- dynamic service orchestration: launching necessary data processing only when it is required
- optimized task deployment: assigning tasks between cloud and edges based on the locality of producers and consumers - scalable context management: allowing flexible information exchanging (both topic-based and scope-based) between producers and consumers
-
How can customers benefit from FogFlow?
- fast time-to-market when realizing and releasing new services over the shared, geo-distributed ICT infrastructure
- reduced operation cost and management complexity when operating variou services
- being able to provide services that require low latency and fast response time
Installation
The instructions to install FogFlow can be found in the Installation Guide
API
APIs and examples of their usage can be found here
Testing
For performing a basic end-to-end test, you can follow the detailed instructions here.
Quality Assurance
This project is part of FIWARE and has been rated as follows:
Publications
- B. Cheng, G. Solmaz, F. Cirillo, E. Kovacs, K. Terasawa and A. Kitazawa, โFogFlow: Easy Programming of IoT Services Over Cloud and Edges for Smart Cities,โ in IEEE Internet of Things Journal, vol. 5, no. 2, pp. 696-707, April 2018, doi: 10.1109/JIOT.2017.2747214. IoT Journal, 2020 Best Paper Award Runner-Up
- Cheng, Bin, Jonathan Fuerst, Gurkan Solmaz, and Takuya Sanada. "Fog function: Serverless fog computing for data intensive iot services." In 2019 IEEE International Conference on Services Computing (SCC), pp. 28-35. IEEE, 2019. IEEE SCC, 2019 Best Paper Award
Talks
ยฉ 2022 NEC