Distributed systems are hard. We often think about huge applications such as social media platforms or a giant retail system. However, IT has dealt with the distributed edge since IT’s inception. I remember staying up all night in the data center early 1999 to install Intel LANDesk to update software components on 1000 workstations before Y2K. Many of the same challenges exist in IoT with a few more considerations. AWS IoT Greengrass is the AWS database service (hat tip to Corey again) that manages the problem.
Why is it a database? Because how do you keep track of the data and configuration of 10,000 or 100,000 IoT devices? Via a command and control system that collects data from the edge devices and pushes code updates as configuration changes are needed. How is it more than a database? Greengrass is the control platform as well. You can use Greengrass to build an IoT device. Greengrass goes beyond collecting data. You can use it as the base for the software on a Rasberry Pi with a temperature sensor acting as a weather station.
What happens when you need to update the code for 50 or so devices across your sites? What if you wish to perform real-time analysis on the Rasberry Pi vs. uploading the data to the public cloud? Or, what if you have 100 devices in a single location and want a hub to collect and process the data before uploading it to AWS? AWS Greengrass is the database to perform all the management and control.
I referenced a super dope interview with Nature Fresh Farms. The company is generating 37PB of IoT data per growing season. Watch the interview where I ask as many questions as I can in 15-mins.