Использование Visual Studio Code для развертывания приложений в Кластеры больших данных SQL Server

Область применения: SQL Server 2019 (15.x)

В этой статье описывается развертывание приложений в кластер больших данных SQL Server. Мы будем использовать Microsoft Visual Studio Code и расширение "Развертывание приложений".

Важно!

Поддержка надстройки "Кластеры больших данных" Microsoft SQL Server 2019 будет прекращена. Мы прекратим поддержку Кластеров больших данных SQL Server 2019 28 февраля 2025 г. Все существующие пользователи SQL Server 2019 с Software Assurance будут полностью поддерживаться на платформе, а программное обеспечение будет по-прежнему поддерживаться с помощью SQL Server накопительных обновлений до этого времени. Дополнительные сведения см. в записи блога объявлений и в статье о параметрах больших данных на платформе Microsoft SQL Server.

Предварительные требования

Возможности

Расширение "Развертывание приложений" поддерживает следующие задачи в Visual Studio Code:

  • проверка подлинности в кластере больших данных SQL Server;
  • получение шаблона приложения из репозитория GitHub для развертывания поддерживаемых сред выполнения;
  • управление открытыми шаблонами приложений в рабочей области пользователя;
  • развертывание приложения с помощью спецификации в формате YAML;
  • управление развернутыми приложениями в кластере больших данных SQL Server;
  • отображение всех развернутых приложений с дополнительными сведениями на боковой панели;
  • создание спецификации запуска для использования приложения или его удаления из кластера;
  • использование развернутых приложений с помощью спецификации запуска YAML.

В следующих разделах описывается пошаговая установка расширения "Развертывание приложений". В них также приводятся общие сведения о том, как оно работает.

Установка расширения "Развертывание приложений" в Visual Studio Code

В Visual Studio Code установите расширение Развертывания приложений:

  1. Чтобы установить расширение "Развертывание приложений" в Visual Studio Code, скачайте расширение с сайта GitHub.

  2. Запустите Visual Studio Code и перейдите на боковую панель "Расширения".

  3. Откройте контекстное меню в верхней части боковой панели и выберите пункт Install from vsix.

    Установка VSIX

  4. Найдите скачанный файл sqlservbdc-app-deploy.vsix и выберите его для установки.

После успешной установки расширения "Развертывание приложений" вам будет предложено перезапустить Visual Studio Code. Теперь на боковой панели Visual Studio Code должен появиться обозреватель приложений кластера больших данных SQL Server.

Загрузка Обозревателя приложений

Нажмите на значок "Расширения" на боковой панели. Появится боковая панель с Обозревателем приложений.

Снимок экрана, на котором показан Обозреватель приложений без приложений и их спецификаций.

Подключение к конечной точке кластера

Для подключения к конечной точке кластера можно использовать любой из следующих методов:

  • Щелкните строку состояния внизу с сообщением SQL Server BDC Disconnected.
  • Вы также можете нажать вверху кнопку Connect to Cluster со стрелкой, указывающей не дверь.

В Visual Studio Code появится запрос на указание конечной точки, имени пользователя и пароля.

Подключитесь к конечной точке Cluster Management Service, используя порт 30080.

Эту конечную точку можно также найти в командной строке, выполнив следующую команду:

azdata bdc endpoint list

Другой способ получить эти сведения — перейти к серверу в Azure Data Studio и щелкнуть правой кнопкой мыши пункт Управление. Откроется список конечных точек для служб.

Конечная точка ADS

Найдите конечную точку, которую вы хотите использовать, а затем подключитесь к кластеру.

Новое подключение

После успешного подключения к кластеру в Visual Studio Code появится соответствующее уведомление. Развернутые приложения отображаются на боковой панели, а конечная точка и имя пользователя сохраняются в ./sqldbc в составе профиля пользователя. Пароли и токены никогда не сохраняются. При входе в систему в дальнейшем в запросе будут подставлены сохраненные имя узла и имя пользователя, но пароль потребуется ввести. Чтобы подключиться к другой конечной точке кластера, выберите New Connection. Подключение автоматически закрывается при выходе из Visual Studio Code и при открытии другой рабочей области. В этом случае потребуется выполнить повторное подключение.

Создание шаблона приложения

В Visual Studio Code откройте рабочую область в расположении, в котором нужно сохранить артефакты приложения.

Чтобы развернуть новое приложение из шаблона, нажмите кнопку Создать шаблон приложения на панели Спецификации приложений. Появится запрос для выбора расположения на локальном компьютере, в котором необходимо сохранить имя, среду выполнения и новое приложение. В качестве имени и версии необходимо указать метку в формате DNS-1035, которая должна состоять из строчных букв и цифр или дефисов "-". Она также должна начинаться с буквы и заканчиваться буквой или цифрой.

Желательно поместить расширение в текущую рабочую область Visual Studio Code. Это позволит использовать все возможности расширения.

Шаблон нового приложения

По завершении в указанном расположении будет сформирован новый шаблон приложения и развертывание spec.yaml будет открыто в вашей рабочей области. Если выбранный каталог находится в рабочей области, он будет указан в области Спецификации приложений:

Загруженный шаблон приложения

Новый шаблон — это простое приложение "helloworld", которое имеет следующую структуру, показанную в области Спецификации приложений:

  • spec.yaml
    • Предоставляет кластеру сведения о том, как должно развертываться приложение.
  • run-spec.yaml
    • Предоставляет кластеру сведения о том, как должно вызываться приложение.

Исходный код приложения находится в папке Workspace.

  • Имя исходного файла
    • Это файл исходного кода, указанный в элементе src в файле spec.yaml.
    • В нем имеется одна функция handler, которая считается entrypoint приложения согласно spec.yaml. Она принимает входную строку msg и возвращает выходную строку out. Эти строки определяются в элементах inputs и outputs в файле spec.yaml.

Чтобы использовать файл spec.yaml для развертывания приложения, а не шаблона, нажмите кнопку New Deploy Spec рядом с кнопкой New App Template. Затем выполните те же самые действия. Вы получите только файл spec.yaml, который можно изменить.

Развертывание приложения

Вы можете мгновенно развернуть это приложение с помощью CodeLens Deploy App в файле spec.yaml или нажать кнопку с молнией поверх папки рядом с файлом spec.yaml в меню Спецификации приложений. Расширение распакует все файлы в каталог, в котором находится файл spec.yaml. Затем оно развернет приложение в кластер.

Примечание

Файл spec.yaml должен находиться на корневом уровне в каталоге с исходным кодом приложения. Также проверьте, что все файлы приложения находятся в том же каталоге, что и файл spec.yaml.

Кнопка развертывания приложения

Развертывание приложения с помощью CodeLens

На боковой панели отображается состояние приложения, с помощью которого вы сможете определить, когда приложение будет готово к использованию:

Приложение развернуто

Сообщение о готовности приложения на боковой панели

Уведомление о готовности приложения

На боковой панели вы сможете просмотреть следующие сведения:

Вы можете просмотреть все развернутые приложения с помощью следующих ссылок:

  • state
  • version
  • входные параметры;
  • выходные параметры;
  • ссылки
    • Swagger;
    • подробности

Если нажать на элемент links, вы сможете просмотреть файл swagger.json развернутого приложения. Это позволит вам создавать клиенты для вызова приложения:

Снимок экрана, на котором показан пользовательский интерфейс Visual Studio Code с файлом swagger.json.

Дополнительные сведения см. в разделе Использование приложений в кластерах больших данных.

Запустите приложение.

Когда приложение будет готово, вызовите его с помощью файла run-spec.yaml. Этот файл предоставляется в составе шаблона приложения:

Спецификация запуска

Укажите строку, на которую следует заменить hello. Затем снова запустите приложение с помощью ссылки CodeLens или кнопки с молнией поверх папки на боковой панели. Если параметр run-spec не отображается, создайте его из развернутого приложения в кластере:

Получение спецификации запуска

После изменения файла run-spec запустите его. Visual Studio Code возвратит результат после завершения работы приложения:

Выходные данные приложения

На предыдущем снимке экрана вы видите, что выходные данные отображаются во временном файле .json в рабочей области. При желании вы можете сохранить эти выходные данные. Если этого не сделать, они будут удалены при закрытии окна. Если приложение не выводит данные в файл, вы получите только уведомление о состоянии Successful App Run. Если выполнение не было завершено успешно, вы получите сообщение об ошибке, которое поможет определить причину проблемы.

При запуске приложения передавать параметры можно различными способами.

Все необходимые входные данные можно указать в файле .json:

  • inputs: ./example.json

Укажите тип параметра в строке, если приложение вызывается и входные параметры не являются примитивами. Это справедливо для массивов, векторов, кадров данных, сложного кода JSON и т. д.:

  • Вектор
    • inputs:
      • x: [1, 2, 3]
  • Матрица
    • inputs:
      • x: [[A,B,C],[1,2,3]]
  • Объект
    • inputs:
      • x: {A: 1, B: 2, C: 3}

Или передайте строку в файл .txt, .json или .csv в формате, который требуется приложению. В данном примере файл анализируется с помощью Node.js Path library, причем путь к файлу определяется как string that contains a / or \ character.

Если обязательный входной параметр не указан, появится сообщение об ошибке. Это сообщение будет содержать неправильный путь к файлу, если путь к файлу был указан в виде строки. Оно также может указывать на то, что параметр является недопустимым. Создатель приложения должен хорошо представлять себе определяемые параметры.

Чтобы удалить приложение, перейдите к приложению на боковой панели Deployed Apps и нажмите на значок корзины.

Дальнейшие действия

Дополнительные сведения о том, как интегрировать приложения, развернутые в Кластеры больших данных SQL Server, в собственные приложения, см. в статье Использование приложений в кластерах больших данных. Вы также можете ознакомиться с дополнительными примерами использования расширения в наборе примеров развертывания приложений.

Дополнительные сведения о Кластеры больших данных SQL Server см. в статье Общие сведения о Кластеры больших данных SQL Server 2019.

Наша цель — сделать это расширение полезным для вас, поэтому мы будем рады получить ваши отзывы. Отправляйте их разработчикам SQL Server.