At the recent Build conference in Seattle, Microsoft announced a new database offering, in preview, which brings SQL capabilities to edge computing.
Officially called Azure SQL Database Edge, the database service runs on ARM64 and x64 processors and provides capabilities such as data streaming, time series data, graph support and in-database machine learning. The supported platforms include Linux, Windows, Docker and Kubernetes container platforms.
Image Source: (screenshot): https://www.youtube.com/watch?v=jWBfS_6LGNA
Microsoft isn’t the only company that anticipates growth in edge data storage. Gartner predicts that by 2025,
75% of enterprise-generated data will be created and processed away from the data center or cloud which is up from 20% today. Much of this growth is anticipated as a result of growth in sensors and chip innovations that require local analytics and machine learning capabilities.
SQL Server and more recently, Azure SQL Database, have well-established roots. Scott Guthrie, executive vice president at Microsoft, explains why it was important to invest in an edge data store:
Intelligent cloud and intelligent edge applications have evolved from primarily low-compute IoT devices working with the cloud to powerful compute at the edge, which requires a new modern hybrid application approach. A key aspect of enabling this is supporting the spectrum of edge compute and data needs. SQL Server and Azure SQL Database are the leading data engines for enterprise workloads on-premises and in the cloud.
One of the benefits of adopting Azure SQL Database Edge over other edge platforms is that developers do not require to learn new skillsets, Guthrie explains:
Azure SQL Database Edge shares the same programming surface area with Azure SQL Database and SQL Server; you can easily take your applications to the edge without having to learn new tools and languages, allowing you to preserve consistency in application management and security control. This consistency in database programming and control plane across cloud and edge is essential to running a secure and well-managed hybrid application.
A common requirement in IoT scenarios is capturing time series data for trending and analysis. Using Azure SQL Database Edge, organizations can stream data while implementing time-windowing, aggregation and filter capabilities to gain deeper insights into their data. In addition, Azure SQL Database Edge supports representing data structures as graphs to create deeper relationships across entities.
Detecting anomalies, is another common requirement in IoT solutions, which can be achieved through built-in machine learning capabilities found in Azure SQL Database Edge. Developers can choose popular tools such as R, Python, Java or Apache Spark to process time-series, graph or other types of data. Models developed using these tools can be deployed inside an edge container to avoid connectivity and latency challenges that may be encountered when connecting edge devices to cloud-based resources.
Organizations can achieve high-availability with Azure SQL Database Edge, much like other SQL Server implementations, when using Always On configurations with Kubernetes. In addition, other traditional SQL Server features such as transparent data encryption (TDE), data masking and Always Encrypted are also supported.
Azure SQL Database Edge is currently in private preview, but interested organizations can enroll in the early adopter program to gain access.