Actually, Edge Computing is already here. It has been here on everyone’s lips for quite some time, but for me and for many others, Edge Computing is still a hodgepodge of many things. The proliferation of devices, IoT, sensor, end points being pulled into the ubiquitous term of Edge Computing has made the scope ever changing, and difficult to pin down. And it is this proliferation of edge devices that will generate voluminous amount of data. Obvious questions emerge:
- How to do you store all the data?
- How do you process all the data?
- How do you derive competitive value from the data from these edge devices?
- How do you securely transfer and share the data?
From the storage technology perspective, it might be easier to observe what are the traits of the data generated on the edge device. In this blog, we also observe what could some new storage technologies out there that could be part of the Edge Computing present and future.
Storage at the Edge
The mantra of putting compute as close to the data and processing it where it is stored is the main crux right now, at least where storage of the data is concerned. The latency to the computing resources on the cloud and back to the edge devices will not be conducive, and in many older settings, these edge devices in factory may not be even network enabled. In my last encounter several years ago, there were more than 40 interfaces, specifications and protocols, most of them proprietary, for the edge devices. And there is no industry wide standard for these edge devices too.
This has given rise to edge servers and IoT gateways, usually a ruggedized server with several interfaces variant such as RS-232/422/485, Bluetooth, Wifi, USB, Ethernet, CANbus, Zigbee and more.
But under the covers, it is obviously a low powered PC equipped with more connectivity to edge devices and sensors. The storage in these IoT gateways is limited in processing the data and often could be a single small 2.5″ hard disk drive, or a consumer SSD or even might be just an SD card. With limited RAM (1-16GB), the heavy lifting is taken up by the low powered and low performance CPU. The inevitable inundation of voluminous data in no doubt sets the opportunity for storage to be the central piece for edge devices and edge services for both storage of the data AND the processing of the data at the edge.
Dealing with data deluge
The amount of data created by the edge devices is going to be massive. Which data to process first, how much to process, what data to store and to be analyzed later, which to discard, how to securely store and move the data are some of the many, many thoughts going through a data manager’s mind. And in which storage medium and location for real time processing, mid-term and longer term impacts every organization’s effort to maximize the use of the data.
The obvious solution is to throw technology at handling the tsunami of data, in which we will share more further in this blog. The other way, is really to be smarter with the data. If we classify the data at the edge, and label with a defined data personality at the source of the data creation point, we create a self-description data framework. I am a big advocate of creating a common set of data personalities, and I have written about it in the past. These 2 well written articles supported my views as well.
- [ 2016 ] Veritas explains why all data has a personality by Adrian Bridgwater
- [ 2019 ] The need for self-describing secondary data by Chris Evans
Storage technologies at the Edge
One very interesting work is SNIA (Storage Networking Industry Association) Computational Storage development. SNIA sums Computational Storage, in a nutshell, as “Architectures that provide Computational Storage Services coupled to storage offloading host processing and/or reducing data movement”. SNIA is laying the groundwork and shared a few neutral architectural implementations in this space, as shown below:
I still have a way to learn about Computational Storage and there are many technology players wielding their presence in this space. And I like the use cases that have been made possible with Computational Storage such as
- AI Inference at the Edge: Welcome to the Era of Real-Time AI
- Making 5G better: Computational Storage enables better 5G connectivity and facilitates growth of the sector
From the 4 instances of SNIA Computational Storage Framework above, the presence of FPGAs (Field Programmable Gate Arrays) is in 3 of them. As Moore’s Law wanes, the rise of specialized silicon chips has put the data processing units (DPUs) to the fore. System-on-chip (SOC), FPGA, programmable ASICs are now coming forward to slowly, but surely, supplant the CPUs.
DPUs has software programmable multi-core processing units, with off-load acceleration engines and high performance networking, and would easily take the heavy lifting of data processing at the edge. An offspring of DPU is the rise of SmartNICs. DPUs and SmartNICs when paired with computational storage and other persistent memory frameworks, would be the storage and processing units at the edge for the fast coming future.
- [ Forbes ] nVidia® introduces high performance networking and Storage Bluefield DPUs for Data Centers.
- [ The Next Platform ] Pondering that rumoured $30 billion AMD acquisition of Xilinx
Automation and Decisions
I see 2 key outcomes from Edge Computing
- Faster response and decision making
Addressing and attending to the data at the source, at the point where data is created are definitely advantageous, and in many use cases, it would be mission critical too. A self-driving car is an example. The next outcome is to extract efficiency of the deployed edge systems and that can be achieved via automation.
And both will fail if the storage technology fails to deliver the reliability and the performance required to handle the data at the edge. Time to place greater importance of storage technologies at the edge.