Описание SQL для пограничных вычислений

Завершено

Многие организации инвестируют значительные средства в инфраструктуру Интернета вещей. Типичная архитектура решения Интернета вещей включает устройства Интернета вещей, ответственные за считывание показаний датчиков среды для создания данных клиентов. Как правило, эти данные обрабатываются на сайте с помощью пограничных устройств. Кроме того, устройство IoT Edge может запускать совместимые с Docker контейнеры, содержащие пользовательскую бизнес-логику или облегченные версии облачных служб, таких как Azure Stream Analytics, Машинное обучение Azure, Функции Azure, Azure SQL и многие другие. Преимуществом IoT Edge является то, что обработка выполняется в локальной сети, благодаря чему обеспечивается более быстрый цикл обратной связи, если необходимо предпринять какие-либо действия, и одновременно минимизируются затраты на обработку в облаке и пропускную способность.

An architecture diagram displays IoT devices providing customer data to an IoT Edge device running various modules then forwarding data to IoT Hub in Azure.

SQL Azure для пограничных вычислений — это оптимизированное ядро реляционной СУБД, разработанное специально для рабочих нагрузок Интернета вещей. Это решение поддерживает возможности потоковой передачи, обработки и анализа реляционных и нереляционных данных, в том числе в форматах JSON, графов или временных рядов. В основе SQL Azure для пограничных вычислений лежит последняя версия ядра СУБД Microsoft SQL Server — та же подсистеме, которая служит основой для SQL Server и Azure SQL. SQL Azure для пограничных вычислений предоставляет возможности программирования T-SQL, ведущие в отрасли возможности обеспечения производительности, безопасности и обработки запросов в Edge.

Льготы

Знакомый синтаксис и инструменты T-SQL

Разработчики и администраторы SQL могут использовать привычные синтаксис и средства T-SQL , поскольку SQL Azure для пограничных вычислений основан на ядре СУБД Microsoft SQL Server. Доступные средства включают портал Azure, SQL Server Management Studio, Azure Data Studio, Visual Studio Code и SQL Server Data Tools в Visual Studio.

Портативность

SQL Azure для пограничных вычислений — это контейнерная версия ядра СУБД Microsoft SQL Server, оптимизированная для Интернета вещей. SQL Azure для пограничных вычислений можно развертывать на различных серверах Windows и Linux, способных запускать среду выполнения IoT Edge, начиная от мощных полнофункциональных серверов до небольших устройств на основе ARM.

Поддержка нескольких состояний подключения и синхронизации данных

В IoT подключение к Интернету не всегда возможно или надежно. Поэтому модулям IoT Edge необходимо поддерживать все состояния подключения. SQL Azure для пограничных вычислений поддерживает сценарии наличия подключения, отсутствия подключения или частичного подключения. Добавочная синхронизация данных обеспечивается за счет службы Синхронизации данных SQL Azure и настройки групп синхронизации для синхронизации таблиц, которые выбираются двунаправленно в нескольких базах данных в экземплярах Azure SQL и SQL Server.

На схеме ниже показан процесс синхронизации. В процессе синхронизации используется агент синхронизации в SQL Azure для пограничных вычислений для синхронизации данных с центральной базой данных. С точки зрения центра процесс синхронизации управляется приложением синхронизации с учетом сведений, доступных в базе данных синхронизации, где хранятся метаданные и журналы синхронизации.

A diagram depicting the Azure SQL Data Sync process between an Azure SQL Edge database and an Azure SQL database.

Встроенная потоковая передача данных и машинное обучение

SQL Azure для пограничных вычислений имеет встроенную поддержку потоковой передачи данных из нескольких каналов входных данных и в несколько каналов выходных данных. Эта функция использует ту же технологию, которая обеспечивает возможности Azure Stream Analytics и позволяет выполнять самоанализ входящих данных временных рядов с помощью обнаружения аномалий, создания временных окон, агрегирования и фильтрации. SQL Azure для пограничных вычислений также включает функции T-SQL, поддерживающие запрос данных временных рядов. Кроме того, SQL Azure для пограничных вычислений поддерживает вывод машинного обучения и инструкцию PREDICT.

Вопросы безопасности

Безопасность в SQL Azure для пограничных вычислений обеспечивает шифрование данных, классификацию и управление доступом из ядра СУБД Microsoft SQL Server. Кроме того, SQL Azure для пограничных вычислений обеспечивает безопасность на уровне строк, динамическое маскирование данных и прозрачное шифрование данных (TDE) в качестве дополнительного преимущества безопасности. Кроме того, полезно шифровать все файлы резервной копии, созданные с помощью сертификата или асимметричного ключа.

Что касается сетевого транспорта, то SQL Azure для пограничных вычислений использует протокол TLS и сертификаты для шифрования всего обмена данными. Наконец, Microsoft Defender для Интернета вещей предоставляет централизованное и единое решение для обеспечения безопасности для обнаружения и идентификации устройств Интернета вещей, уязвимостей и угроз. Как и в случае с любым решением, связанным с данными, также необходимо убедиться, что пользователям базы данных предоставляются минимальные привилегии в отношении объектов базы данных.

Развертывание SQL Azure для пограничных вычислений из Azure Marketplace

SQL Azure для пограничных вычислений доступно в Azure Marketplace с двумя тарифными планами: SQL Azure для пограничных вычислений для разработчиков (только для разработки, не более 4 ядер и 32 ГБ памяти) и SQL Azure для пограничных вычислений (для рабочей среды, не более 8 ядер и 64 ГБ памяти).

В качестве предварительного требования для развертывания SQL Azure для пограничных вычислений необходимо подготовить Центр Интернета вещей не менее чем с одним устройством IoT Edge. В этом примере предварительно подготовлены Центр Интернета вещей с именем org-iot-hub и устройство IoT Edge под управлением Linux с именем iot-edge-device-1.

  1. Найдите модуль SQL Azure для пограничных вычислений в Azure Marketplace и нажмите кнопку Получить.

    The Azure SQL Edge module overview screen displays with the Get It Now button highlighted.

  2. В модальной форме выберите нужный номер SKU плана программного обеспечения. В этом примере выбран SQL Azure для пограничных вычислений для разработчиков. Затем введите другие сведения в профиле, как указано в форме, и нажмите кнопку Продолжить.

    A modal form displays prompting for software plan and profile information. The Continue button is highlighted.

  3. На экране Целевые устройства для модуля IoT Edge вручную введите значение имени устройства IoT Edge или используйте функцию Найти устройство для поиска пограничного устройства в выбранном Центре Интернета вещей. В этом примере имя пограничного устройства — iot-device-edge-1. Затем нажмите кнопку Создать.

    A form displays prompting for IoT Edge Device Name. The Create button is highlighted.

  4. В колонке Задать модули на устройстве выберите элемент AzureSQLEdge в разделе "Модули IoT Edge".

    The IoT Edge Modules list displays with the AzureSQLEdge module highlighted.

  5. В колонке Обновить модуль IoT Edge выберите вкладку Переменные среды. Затем замените пароль учетной записи администратора SQL Azure для пограничных вычислений, задав значение переменной MSSQL_SA_PASSWORD. При необходимости добавьте параметры конфигурации на вкладке Параметры создания контейнера. По завершении нажмите кнопку Обновить.

    The IoT Edge Module Environment Variables tab is selected along with the value for MSSQL_SA_PASSWORD. The Update button is highlighted.

  6. Вернитесь к колонке Задать модули на устройстве и при необходимости настройте маршрутизацию сообщений для модуля под вкладкой Маршруты. По завершении выберите Просмотр и создание, а затем Создать на экране проверки.

    The Set modules on device blade displays with the Review + create button highlighted.

  7. Откроется экран устройства IoT Edge. Через несколько секунд в списке модулей устройства отобразится AzureSQLEdge в состоянии выполнения. Если запуск модуля не завершен, временно будет указываться состояние ошибки — подождите несколько минут и обновите.

    The IoT Edge device screen displays with the AzureSQLEdge module running. The Refresh button is highlighted on the toolbar menu.

  8. Используйте предпочтительный метод подключения и приступайте к работе с SQL Azure для пограничных вычислений!