Создание приложения с помощью DevOps и API GraphQL
Применимо к:✅базе данных SQL в Microsoft Fabric
В этом разделе руководства вы будете использовать ресурсы, созданные для создания веб-приложения, позволяющего пользователю выбрать регион, затронутый сбоем, а затем увидеть других поставщиков в этом регионе, чтобы предупредить компанию о любых дальнейших сбоях в цепочке поставок. Вы создадите конечную точку GraphQL по данным, а затем создадите приложение ASP.NET, которое можно развернуть локально или в поставщике облачных служб.
Проекты разработки программного обеспечения включают задачи "Операции разработчика" (DevOps), одна из которых — управление версиями. Начните этот раздел, разместив элементы, созданные в системе управления версиями.
В этой статье представлен ряд полезных сценариев для создания приложения на основе базы данных SQL в Fabric.
Необходимые компоненты
- Выполните все предыдущие действия, описанные в этом руководстве.
- Включите параметры клиента интеграции Git.
- Включите параметр администратора клиента для API для GraphQL.
- Создайте организацию и проект в Microsoft Azure DevOps.
CI/CD в Fabric с Azure DevOps
В этой части руководства вы узнаете, как работать с базой данных SQL в Microsoft Fabric с Azure DevOps.
База данных SQL в Microsoft Fabric имеет интеграцию системы управления версиями, позволяя пользователям SQL отслеживать определения своих объектов базы данных с течением времени и в команде:
Команда может зафиксировать базу данных в систему управления версиями, которая автоматически преобразует динамическую базу данных в код в настроенный репозиторий системы управления версиями (Azure DevOps).
Команда может обновить объекты базы данных из содержимого системы управления версиями, которая проверяет код в Azure DevOps перед применением разностного изменения к базе данных.
Если вы не знакомы с управлением исходным кодом в Microsoft Fabric, рекомендуемый ресурс:
Начало работы с системой управления версиями
После завершения этих предварительных требований вы можете синхронизировать рабочую область с Azure DevOps. Это позволяет зафиксировать любые изменения, внесенные в рабочую область в ветвь Azure DevOps, и обновлять рабочую область всякий раз, когда кто-либо создает новые фиксации в ветви Azure DevOps.
Теперь вы измените один из объектов в базе данных с помощью Azure DevOps, который обновит как репозиторий, так и объекты базы данных. Вы также можете изменить объекты непосредственно в репозитории или отправить их там, но в этом случае выполните все действия в среде Azure DevOps.
В представлении рабочей области учебника убедитесь, что рабочая область настроена под управлением версиями и все объекты отображаются в синхронизированном режиме.
В представлении рабочей области вы увидите значок git, выбранную ветвь и сообщение о последнем синхронизации рабочей области с системой управления версиями. Рядом с датой и временем вы увидите ссылку идентификатора для конкретного расположения в среде Azure DevOps. Откройте ссылку, чтобы продолжить.
При запросе войдите в среду Azure DevOps.
В среде Azure DevOps выберите элемент "Файлы " в области обозревателя. Отображаются объекты, синхронизированные с базой данных SQL в Fabric и репозиторием.
Разверните suppy_chain_analytics_database. SQLDatabase, а затем dbo, а затем таблицы, а затем Suppliers.sql объект.
Обратите внимание на определение таблицы T-SQL в содержимом объекта. В рабочей среде программирования этот объект будет изменен с помощью таких средств разработки, как Visual Studio или Visual Studio Code. В любом случае определение этого объекта базы данных реплицируется в репозиторий, который вы зеркально отображали из текущего состояния базы данных. Давайте используем систему управления версиями Azure DevOps, чтобы внести некоторые изменения в объекты базы данных в следующих шагах руководства.
[Fax]
Найдите строку определения столбца и нажмите кнопку "Изменить". Измените определение[Fax] NVARCHAR (255) NULL,
столбца в .Нажмите кнопку "Зафиксировать ".
Заполните появившемся поле сообщения "Фиксация" и нажмите кнопку "Зафиксировать". Старайтесь быть описательными о каждом изменении системы управления версиями для вашей команды и преимущества вашей команды.
Фиксация записывает изменения в репозиторий.
Вернитесь к базе данных SQL на портале Fabric и выберите "Управление версиями".
У вас есть одно обновление. В рабочей среде вы просмотрите эти изменения. Нажмите кнопку "Обновить все ". Обновление может занять некоторое время.
Выберите базу данных SQL в имени Fabric. Откройте новое окно запроса в базе данных SQL.
Скопируйте и вставьте следующий код T-SQL, чтобы увидеть изменения в таблице в реальном времени в базе данных:
SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Suppliers';
Введите следующий код T-SQL, который запрашивает добавление столбца с именем
Notes
в таблицуSuppliers
. Выделите только этот раздел кода и нажмите кнопку "Выполнить ":ALTER TABLE Suppliers ADD Notes NVARCHAR(MAX);
Теперь вернитесь в рабочую область учебника на портале Fabric.
Нажмите кнопку "Управление версиями" и обратите внимание, что вместо обновления в системе отображается запрос на изменение . Установите флажок рядом с именем объекта и нажмите кнопку "Зафиксировать ".
Система фиксирует изменения, внесенные в редакторе запросов, и вы можете вернуться на портал Azure DevOps и перейти к области файлов и схеме, а затем таблицы и
dbo
Suppliers
объект, чтобы увидеть новый столбец. (Может потребоваться обновить страницу, чтобы увидеть изменение.)
Теперь вы узнали, как взаимодействовать со схемами объектов базы данных SQL из системы управления версиями в Azure DevOps. Дополнительные сведения об управлении версиями в Microsoft Fabric см. в статье об интеграции системы управления версиями базы данных SQL в Microsoft Fabric и руководстве по управлению жизненным циклом в Fabric.
Настройка и настройка API GraphQL
Подключение к приложению базы данных часто включает установку набора библиотек для приложения, используюющего протокол табличного потока данных (TDS), который взаимодействует непосредственно с базой данных.
Microsoft Fabric включает интерфейс GraphQL для работы не только с базами данных, но и с несколькими источниками данных. Вы также можете объединить эти источники для интегрированного представления данных. GraphQL — это язык запросов для API, который позволяет запрашивать именно необходимые данные, что упрощает развитие API с течением времени и включение мощных средств разработчика. Он предоставляет полное и понятное описание данных в API, предоставляя клиентам возможность запрашивать именно то, что им нужно и ничего больше. Это делает приложения с помощью GraphQL быстрым и стабильным, так как они управляют данными, которые они получают, а не сервером. Интерфейс GraphQL можно представить как представление набора данных, содержащегося в источнике данных. Вы можете запросить данные и изменить их с помощью изменений. Дополнительные сведения о GraphQL см. в этой ссылке.
Вы можете начать создавать API GraphQL непосредственно из редактора запросов SQL Fabric. Структура автоматически создает схему GraphQL на основе данных, и приложения готовы подключаться в минутах.
Создание API для GraphQL
Чтобы создать API для GraphQL, который будет использоваться для приложения:
Откройте портал базы данных учебника.
Нажмите кнопку "Создать " и выберите API для GraphQL.
Введите текст supplier_impact_gql для имени элемента и нажмите кнопку "Создать".
Откроется панель выбора данных . Прокрутите страницу, пока не найдете
SupplyChain.vProductsBySuppliers
представление, созданное ранее в этом руководстве. Выберите ее.Нажмите кнопку "Загрузить ".
На панели Query1 замените текст, который вы видите там, на следующую строку запроса GraphQL:
query { vProductsbySuppliers(filter: { SupplierLocationID: { eq: 7 } }) { items { CompanyName SupplierLocationID ProductCount } } }
Нажмите кнопку "Выполнить" в окне "Запрос1". Результаты запроса GraphQL возвращаются в окно результатов в формате JSON.
Нажмите кнопку "Копировать конечную точку " на ленте.
Нажмите кнопку "Копировать", когда появится панель ссылок "Копировать". Сохраните эту строку в блокноте или другом расположении, которое будет использоваться в примере приложения для этого руководства. Например, он будет выглядеть примерно так:
https://api.fabric.microsoft.com/v1/workspaces/<work space id>/graphqlapis/<graph api id>/graphql
API для GraphQL теперь готов принимать подключения и запросы. Редактор API можно использовать для тестирования и прототипа запросов GraphQL и обозревателя схем для проверки типов данных и полей, предоставляемых в API. Дополнительные сведения см. в разделе "Создание API GraphQL" из базы данных SQL на портале Fabric.
Создание веб-приложения для запроса данных
До сих пор в этом руководстве вы создали базу данных, в которой хранятся продажи и продукты компании Contoso, а также добавлены поставщики и присоединение сущностей с помощью Transact-SQL (T-SQL). Теперь вы хотите разрешить разработчикам использовать данные без необходимости изучать T-SQL, а также разрешать им запрашивать несколько компонентов Microsoft Fabric в одном интерфейсе. Запустите это приложение локально в локальном интерфейсе REST .NET, который обращается к конечной точке GraphQL, созданной в этом руководстве. Вы также можете развернуть это приложение непосредственно в Microsoft Azure в качестве веб-приложения или на другом веб-сервере вашего выбора.
Создание веб-приложения с помощью базы данных SQL в API Fabric для GraphQL
Вам было предложено создать приложение, показывающее всех затронутых поставщиков, если расположение имеет разрыв цепочки поставок из-за стихийных бедствий или других прерываний. В этом коде показано, как создать приложение ASP.NET, использующее запрос GraphQL для доступа к запросу в конечной точке SQL In Fabric GraphQL, созданной в последнем разделе руководства.
- Установите соответствующий пакет SDK для .NET для операционной системы.
- Откройте ресурс в этом расположении и выполните все действия, которые вы видите там.
Примеры снимков экрана приложения из этого руководства: