This is a continuation of a series of articles on operational engineering aspects of Azure public cloud computing the included the most recent discussion on Azure Maps which is a full-fledged general availability service that provides similar Service Level Agreements as expected from others in the category. In this article, we explore Azure SQL Edge.
Edge Computing has developed differently from mainstream
desktop, enterprise and cloud computing. The focus has always been on speed
rather than data processing which is delegated to the core or cloud computing.
Edge Servers work well for machine data collection and Internet of Things. Edge
computing is typically associated with Event-Driven Architecture style. It
relies heavily on asynchronous backend processing. Some form of message broker
becomes necessary to maintain order between events, retries and dead-letter
queues.
SQL Edge is an optimized relational database engine that
is geared towards edge computing. It provides a high-performance data storage
and processing layer for IoT applications. It provides capabilities to stream,
process and analyze data where the data can vary from relational to document to
graph to time-series and which makes it a right choice for a variety of modern
IoT applications. It is built on the same database engine as the SQL Server and
Azure SQL so applications will find it convenient to seamlessly use queries
that are written in T-SQL. This makes applications portable between devices,
datacenters and cloud.
Azure SQL edge supports two deployment modes – those that
are connected through Azure IoT edge and those that have disconnected
deployment. The connected deployment
requires Azure SQL Edge to be deployed as a module for Azure IoT Edge. In the
disconnected deployment mode, it can be deployed as a standalone docker
container or a Kubernetes cluster.
There are two editions for the Azure SQL edge – a
developer edition and a production sku edition and the spec changes from 4
cores/32 GB to 8 cores and 64 GB. Azure SQL Edge uses the same stream
capabilities as Azure Stream Analytics on IoT edge. This native implementation
of data streaming is called T-SQL streaming. It can handle fast streaming from
multiple data sources. The patterns and relationships in data is extracted from
several IoT input sources. The extracted information can be used to trigger
actions, alerts and notifications. A T-SQL Streaming job consists of a Stream
Input that defines the connections to a data source to read the data stream
from, a stream output job that defines the connections to a data source to
write the data stream to, and a stream query job that defines the data
transformation, aggregations, filtering, sorting and joins to be applied to the
input stream before it is written to the stream output.
SQL Edge also support machine learning models by
integrating with Open Neural Network Exchange runtimes. The models are
developed independent of the edge but can be run on the edge.
No comments:
Post a Comment