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

Завершено

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

На схеме архитектуры показаны устройства Интернета вещей, предоставляющие данные клиента устройству IoT Edge, на котором запущены различные модули, а затем пересылка данных в Центр Интернета вещей в 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 для пограничных вычислений для синхронизации данных с центральной базой данных. С точки зрения центра процесс синхронизации управляется приложением синхронизации с учетом сведений, доступных в базе данных синхронизации, где хранятся метаданные и журналы синхронизации.

Схема: процесс Синхронизация данных SQL Azure между базой данных SQL Azure для пограничных вычислений и базой данных Azure SQL.

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

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 и нажмите кнопку Получить.

    Экран с обзором модуля SQL Azure для пограничных вычислений и выделенной кнопкой

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

    Модальная форма с запросом на получение сведений о тарифном плане использования программного обеспечения и профиле. Выделена кнопка

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

    Форма с запросом на ввод имени устройства IoT Edge. Выделена кнопка

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

    Список модулей IoT Edge с выделенным модулем AzureSQLEdge.

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

    Выбранная вкладка переменных среды модуля IoT Edge вместе со значением для MSSQL_SA_PASSWORD. Выделена кнопка

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

    В колонке

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

    Экран устройства IoT Edge с запущенным модулем AzureSQLEdge. В меню панели инструментов выделена кнопка

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