I've been reading about edge computing and use of nodes to decrease the distance between data and the server and most articles suggest the need of cloud to do edge computing. However, some papers that i've read for instance: AutoTriage - An Open Source Edge Computing Raspberry Pi-based Clinical Screening System
Where the authors basically proposed a method for accelerating a machine learning classifier and doing the classification on the Raspberry Pi in real time, but no cloud is mentioned. Is it absolutely necessary to employ cloud when doing edge computing?
2 Answers
This in a way is playing with terms. By definition (sort of), "edge" is the non-cloud part of a system that consists of cloud and non-cloud parts ! In such systems, the "edge" part of the solution either filters out relevant inputs to save on data upload (and cloud processing) costs, improve response latency, provide local cache, provide some offline features or some combination of the above.
However, there are plenty of "intelligent" stand alone systems in the world. Some may be standalone in primary function but use the cloud as a way to get updates or to publish results (and perhaps to provide data to the cloud to improve the solution). Whether this qualifies as "edge" is debatable. Maybe some will say it's an edge case of edge computing !
Edge computing is the technique of performing the compute near to the place where the data is getting generated. In real world IoT scenarios, the minimal capability required at the edge is to perform data acquisition and transmission to the central server. The data acquisition requires very light weight infrastructure.
In some scenarios, we need to perform some data transformations and insight generation with the realtime data before even sending it to the central server or cloud. In this scenario, we will have to include some additional logic other than the data acquisition logic. The compute requirement increases based on the complexity of the logic. Sometime it can be some ML models running on the edge. So in general, the functionalities in an edge device varies based on scenario.
The system with the cloud and the distributed edge devices forms the IoT network. The data from all these edge devices will be collected at the cloud. The direction of the data will be from Edge to Cloud. We can do various analytics using the realtime as well as historic data on the cloud. The data retention and processing capabilities at the edge will be very limited. There is no challenge in keeping a large infrastructure in the cloud.