Criar um aplicativo usando o DevOps e a API do GraphQL
Aplica-se a:✅banco de dados SQL no Microsoft Fabric
Nesta seção do tutorial, você usará os ativos criados para criar um aplicativo Web que permita ao usuário selecionar uma região afetada por uma interrupção e, em seguida, ver os outros fornecedores nessa região para alertar a empresa sobre quaisquer interrupções adicionais na cadeia de suprimentos. Você criará um endpoint GraphQL sobre seus dados e, em seguida, criará um aplicativo ASP.NET que pode ser implantado localmente ou em um provedor de nuvem.
Os projetos de desenvolvimento de software envolvem tarefas de DevOps (Developer Operations), uma das quais é o controle do código-fonte. Você começará esta seção colocando os itens criados sob controle do código-fonte.
Este artigo apresenta uma série de cenários úteis para criar um aplicativo baseado no banco de dados SQL no Fabric.
Pré-requisitos
- Conclua todas as etapas anteriores neste tutorial.
- Habilite Configurações de locatário de integração do Git.
- Habilite a Configuração de administrador de locatário para API para GraphQL.
- Crie uma organização e um projeto no Microsoft Azure DevOps.
CI/CD no Fabric com o Azure DevOps
Nesta parte do tutorial, você aprenderá a trabalhar com seu banco de dados SQL no Microsoft Fabric com o Azure DevOps.
Um banco de dados SQL no Microsoft Fabric tem integração de controle do código-fonte, permitindo que os usuários do SQL acompanhem as definições de seus objetos de banco de dados ao longo do tempo e em uma equipe:
A equipe pode confirmar o banco de dados no controle do código-fonte, que converte automaticamente o banco de dados dinâmico em código no repositório de controle do código-fonte configurado (Azure DevOps).
A equipe pode atualizar objetos de banco de dados do conteúdo do controle do código-fonte, que valida o código no Azure DevOps antes de aplicar uma alteração diferencial ao banco de dados.
Se você não estiver familiarizado com o controle de código-fonte no Microsoft Fabric, aqui está um recurso recomendado:
Introdução ao controle do código-fonte
Depois de concluir esses pré-requisitos, você poderá manter seu workspace sincronizado com o Azure DevOps. Isso permite que você confirme todas as alterações feitas no workspace no branch do Azure DevOps e atualize seu workspace sempre que alguém criar novas confirmações no branch do Azure DevOps.
Agora você editará um dos objetos em seu banco de dados usando o Azure DevOps, que atualizará o repositório e os objetos de banco de dados. Você também pode editar objetos diretamente no repositório ou "enviá-los" por push, mas, nesse caso, executar todas as etapas em seu ambiente do Azure DevOps.
Na visualização do espaço de trabalho do tutorial, verifique se o espaço de trabalho está configurado para estar sob controle do código-fonte e se todos os objetos mostram Sincronizado.
Na visualização Workspace, você verá o ícone do git, o branch selecionado e uma mensagem sobre a última vez que o Workspace foi sincronizado com o controle do código-fonte. Ao lado da data e hora, você verá um link de identificador para o local específico em seu ambiente do Azure DevOps. Abra esse link para continuar.
Entre no ambiente do Azure DevOps, se solicitado.
Uma vez dentro do ambiente do Azure DevOps, selecione o item Arquivos no painel do explorer. Os objetos sincronizados com o banco de dados SQL no Fabric e no repositório são exibidos.
Expanda o suppy_chain_analytics_database.SQLDatabase, depois dbo, depois Tables e objeto Suppliers.sql.
Observe a definição T-SQL da tabela no conteúdo do objeto. Em um ambiente de codificação de produção, esse objeto seria alterado usando ferramentas de desenvolvimento, como Visual Studio ou Visual Studio Code. Em qualquer caso, a definição desse objeto de banco de dados é replicada para o repositório, que você espelhou do estado atual do banco de dados. Vamos usar o controle do código-fonte do Azure DevOps para fazer algumas alterações nos objetos de banco de dados nas próximas etapas do tutorial.
Localize a linha de definição da coluna
[Fax]
e selecione o botão Editar. Edite a definição da coluna para[Fax] NVARCHAR (255) NULL,
.Selecione o botão Confirmar.
Preencha a caixa de mensagem Confirmar que aparece e selecione o botão Confirmar. Tente ser descritivo de todas as alterações no controle do código-fonte, para seu benefício e de sua equipe.
A confirmação grava a alteração no repositório.
Volte para o banco de dados SQL no portal do Fabric e selecione Controle do Código-Fonte.
Você tem uma atualização pendente. Na produção, você examinará essas alterações. Selecione o botão Atualizar tudo. A atualização pode levar algum tempo.
Selecione o banco de dados SQL em Nome da estrutura. Abra uma nova janela de consulta no banco de dados SQL.
Copie e cole o seguinte código T-SQL para ver as alterações na tabela ao vivo no banco de dados:
SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Suppliers';
Insira o seguinte código T-SQL que consulta para adicionar uma coluna chamada
Notes
à tabelaSuppliers
. Realce apenas essa seção do código e selecione o botão Executar:ALTER TABLE Suppliers ADD Notes NVARCHAR(MAX);
Agora retorne ao Workspace do tutorial no portal do Fabric.
Selecione o botão Controle do Código-Fonte e observe que, em vez de uma Atualização, seu sistema mostra uma solicitação Alterar. Marque a caixa de seleção ao lado do nome do objeto e, em seguida, selecione o botão Confirmar.
O sistema confirma as alterações feitas no editor de consultas e você pode retornar ao Portal do Azure DevOps e navegar até a área Arquivos e o Esquema
dbo
e, em seguida, o objeto Tabelas eSuppliers
para ver a nova coluna. (Talvez seja necessário atualizar a página para ver a alteração.)
Agora você viu como pode interagir com seus esquemas de objeto de banco de dados SQL do controle do código-fonte no Azure DevOps. Para obter mais informações sobre o controle do código-fonte no Microsoft Fabric, consulte Integração do controle do código-fonte do banco de dados SQL no Microsoft Fabric e Tutorial: Gerenciamento do ciclo de vida no Fabric.
Configurar e configurar a API do GraphQL
A conexão com um aplicativo de banco de dados geralmente envolve a instalação de um conjunto de bibliotecas para seu aplicativo que usam o protocolo TDS (Tabular Data Stream) que interage diretamente com o banco de dados.
O Microsoft Fabric inclui uma interface GraphQL para trabalhar não apenas com bancos de dados, mas com várias fontes de dados. Você também pode combinar essas fontes para uma exibição de dados integrada. O GraphQL é uma linguagem de consulta para APIs que permite solicitar exatamente os dados necessários, facilitando a evolução das APIs ao longo do tempo e permitindo ferramentas poderosas para desenvolvedores. Ele fornece uma descrição completa e compreensível dos dados em sua API, dando aos clientes o poder de solicitar exatamente o que precisam e nada mais. Isso torna os aplicativos que usam o GraphQL rápidos e estáveis porque controlam os dados que obtêm, não o servidor. Você pode pensar na interface do GraphQL como fornecendo uma exibição de um conjunto de dados contidos em uma fonte de dados. Você pode consultar os dados e alterá-los usando mutações. Você pode saber mais sobre o GraphQL nesta referência.
Você pode começar a criar APIs do GraphQL diretamente do editor de consultas SQL do Fabric. O Fabric cria o esquema GraphQL automaticamente com base em seus dados, e os aplicativos estão prontos para se conectar em minutos.
Criar uma API para GraphQL
Para criar a API para GraphQL que você usará para um aplicativo:
Abra o portal do banco de dados do tutorial.
Selecione o botão Novo e selecione API para GraphQL.
Insira o texto supplier_impact_gql para o Nome do item e selecione Criar.
Você verá um painel Escolher dados. Role até encontrar
SupplyChain.vProductsBySuppliers
, a exibição que você criou anteriormente neste tutorial. Selecione-a.Selecione o botão Carregar.
No painel Query1, substitua o texto que você vê pela seguinte cadeia de consulta do GraphQL:
query { vProductsbySuppliers(filter: { SupplierLocationID: { eq: 7 } }) { items { CompanyName SupplierLocationID ProductCount } } }
Selecione o botão Executar na janela Query1. Os resultados da consulta do GraphQL são retornados para a janela Resultados no formato JSON.
Selecione o botão Copiar ponto de extremidade na faixa de opções.
Selecione o botão Copiar quando o painel Copiar link for exibido. Armazene essa cadeia de caracteres em um bloco de notas ou outro local a ser usado no aplicativo de exemplo deste tutorial. Por exemplo, será semelhante a:
https://api.fabric.microsoft.com/v1/workspaces/<work space id>/graphqlapis/<graph api id>/graphql
Sua API para GraphQL agora está pronta para aceitar conexões e solicitações. Você pode usar o editor de API para testar e prototipar consultas GraphQL e o explorador de esquema para verificar os tipos de dados e campos expostos na API. Para obter mais informações, consulte Criar API do GraphQL a partir do banco de dados SQL no portal do Fabric.
Criar um aplicativo Web para consultar dados
Até agora, neste tutorial, você criou um banco de dados que armazena as vendas e os produtos da Contoso e adicionou fornecedores e entidades de junção usando o Transact-SQL (T-SQL). Agora você deseja permitir que os desenvolvedores usem os dados sem precisar aprender T-SQL e também permitir que eles consultem vários componentes do Microsoft Fabric em uma única interface. Execute esse aplicativo localmente em uma interface REST do .NET auto-hospedada que acessa o ponto de extremidade do GraphQL que você criou neste tutorial. Você também pode implantar esse aplicativo diretamente no Microsoft Azure como um aplicativo Web ou em outro servidor Web de sua escolha.
Criar um aplicativo Web usando o banco de dados SQL na API do Fabric para GraphQL
Você foi solicitado a criar um aplicativo que mostre a todos os fornecedores afetados se um local tiver uma quebra na cadeia de suprimentos, devido a desastres naturais ou outras interrupções. Este código mostra como criar um aplicativo ASP.NET que usa uma consulta GraphQL para acessar uma consulta no ponto de extremidade SQL In Fabric GraphQL que você criou na última seção do tutorial.
- Instale o SDK do .NET apropriado para o sistema operacional.
- Abra o recurso neste local e siga todas as etapas que você vê lá.
Seguem as capturas de tela de exemplo do aplicativo deste tutorial: