Reimagining IoT Architecture
by Eshwar Natarajan in Apps/DevOps, General
IoT devices are small and distributed in contrast to typical networked items such as PCs, Servers, Smart Phones / Tablets and hence designing IoT solution architecture is challenging and needs to be approached differently.
Traditionally IoT devices have been taking advantage of cloud computing, however with devices becoming smaller and more powerful, developers and manufacturers have started to exploit the benefits of doing local compute and analytics, and thus reducing cloud and data center loads.
This on-device approach referred to as “Edge computing” helps reducing latency for critical applications and minimizing dependency on cloud.
The Edge
Edge computing can help reducing compute and connectivity cost by sending only the information that matters instead of raw data while delivering tangible value to both traditional and industrial IoT use cases. At the network level, this is part of a fundamental shift from resource-centric cloud based interconnected network towards decentralized network of small-distributed devices.
The change also introduces shift in data traffic pattern with much of the data remaining local while delivering resilience to your IoT solution by addressing connectivity, low bandwidth and network failure issues.
To give an example, consider an IoT solution where you want to use pressure sensors and control valves to monitor a gas pipeline. The traditional solution would have been to send all the readings to the cloud, analyze them using machine learning or raise alerts for human intervention, and send appropriate action down to the end device.
For a small proof-of-concept, this may be a feasible solution, however, at large scale the data volume, network bandwidth and compute required becomes significant. Compare it with on-device approach where anomaly detection happens locally and command to shutdown control valve can happen locally within milliseconds.
Is that end of Cloud for IoT?
No, the edge-cloud IoT solution architecture combines the best of both designs with cloud still doing historical data computation for predictive analytics or sending down commands or updates, while the edge computing reduces the latency, improves availability and reactivity, and reduces data deluge.