Compartilhar via


O que é a API do Microsoft Fabric para GraphQL?

O GraphQL é uma linguagem de consulta de software livre e runtime para APIs mantidas pelo GraphQL Foundation. Ao contrário das APIs REST tradicionais, o GraphQL permite que os clientes solicitem exatamente os dados de que precisam em uma única consulta, reduzindo tanto a captura excessiva quanto a captura insuficiente de dados.

A API do Microsoft Fabric para GraphQL traz esse padrão avançado para o ecossistema do Fabric como uma camada de acesso a dados que permite consultar várias fontes de dados de forma rápida e eficiente. A API abstrai as especificidades das fontes de dados de back-end para que você se concentre na lógica do aplicativo e forneça todos os dados de que um cliente precisa em uma única chamada. Com sua linguagem de consulta simples e manipulação eficiente do conjunto de resultados, o GraphQL minimiza o tempo que os aplicativos levam para acessar seus dados no Fabric.

Por que usar dados do GraphQL for Fabric

Sem o GraphQL, expor dados do Fabric a aplicativos normalmente requer uma destas abordagens:

Conexões de banco de dados diretas

  • Os aplicativos se conectam diretamente a lakehouses ou armazéns usando drivers SQL (ODBC, JDBC)
  • Acopla fortemente o código da aplicação aos esquemas de banco de dados — alterações de esquema interrompem o funcionamento dos aplicativos
  • Exige o gerenciamento de cadeias de conexão, credenciais e dependências de driver em cada aplicativo
  • Consultas SQL inseridas no código do aplicativo são difíceis de testar e manter

APIs REST personalizadas

  • Criar e manter serviços de back-end personalizados com estruturas como ASP.NET ou Node.js
  • Escrever código do controlador, lógica de roteamento e camadas de acesso a dados para cada ponto de extremidade
  • Criar versões de API separadas (v1, v2, v3) quando as estruturas de dados forem alteradas
  • Superconsulta de dados (obtenha linhas inteiras quando precisar de poucas colunas) ou subconsulta (realize várias consultas para buscar dados relacionados)

O GraphQL resolve estes desafios:

  • Nenhum código de back-end necessário: o Fabric gera automaticamente o esquema, resolvedores e ponto de extremidade do GraphQL de suas fontes de dados
  • Consultar exatamente o que você precisa: solicitar campos específicos em uma única consulta, eliminando a busca excessiva e reduzindo os tamanhos de carga
  • Buscar dados relacionados em uma solicitação: percorrer relações sem várias viagens de ida e volta (sem problema de consulta N+1)
  • Evolução do esquema sem alterações interruptivas: adicionar novos campos sem afetar consultas existentes — os clientes solicitam apenas o que sabem sobre
  • Segurança do tipo e documentação: esquema de auto-documentação com introspecção interna que as ferramentas de desenvolvimento entendem
  • Acesso unificado a várias fontes: consultar em lakehouses, armazéns de dados e bancos de dados SQL através de um único ponto de extremidade

Para desenvolvedores de aplicativos, GraphQL significa desenvolvimento mais rápido com menos infraestrutura. Para engenheiros de dados, isso significa expor dados sem gravar e manter código de API personalizado.

Quem deve usar a API para GraphQL

A API do Fabric para GraphQL foi projetada para:

  • Desenvolvedores de aplicativos que criam aplicativos web e móveis orientados por dados que utilizam dados do Fabric lakehouse e do warehouse
  • Engenheiros de Dados expondo dados do Fabric a aplicativos a jusante por meio de APIs modernas e flexíveis sem escrever código de back-end personalizado
  • Desenvolvedores de integração conectando dados do Fabric a aplicativos personalizados e fluxos de trabalho automatizados
  • Desenvolvedores de BI criando aplicativos de análise personalizados que complementam o Power BI com dados do Fabric
  • Cientistas de dados expondo dados do Fabric e insights de aprendizado de máquina por meio de APIs programáticas

Se você estiver trabalhando na plataforma de análise unificada do Microsoft Fabric e precisar tornar os dados do lakehouse, warehouse ou banco de dados SQL acessíveis a aplicativos, a API do GraphQL fornecerá uma maneira eficiente e amigável para o desenvolvedor de consultar exatamente os dados necessários.

Dica

Deseja integrar as APIs do GraphQL do Fabric com agentes de IA? Experimente o tutorial Criar um servidor MCP do GraphQL local para agentes de IA para conectar agentes de IA aos dados do Fabric usando o Protocolo de Contexto de Modelo.

Expor dados por meio da API para GraphQL

Expor fontes de dados a um item do GraphQL no Microsoft Fabric é simples e pode ser feito em minutos usando a interface visual do portal do Fabric. O processo envolve:

  1. Criar um item de API do GraphQL no workspace do Fabric
  2. Conectar suas fontes de dados selecionando entre lakehouses, armazéns ou bancos de dados disponíveis
  3. Escolha quais objetos expor , como tabelas, exibições ou procedimentos armazenados
  4. Definir relações (opcional) entre objetos para habilitar consultas aninhadas avançadas
  5. Configurar permissões para controlar quem pode acessar sua API

Depois de configurado, o Fabric gera automaticamente o esquema GraphQL, cria os resolvedores necessários e fornece uma URL de ponto de extremidade. Sua API está pronta imediatamente para aceitar consultas, sem necessidade de implantação ou configuração de infraestrutura.

Para obter instruções passo a passo, consulte Criar uma API para GraphQL no Fabric e adicionar dados.

Fontes de dados com suporte

Atualmente, as seguintes fontes de dados com suporte são expostas por meio da API do Fabric para GraphQL:

  • Data Warehouse do Microsoft Fabric
  • Banco de dados SQL do Microsoft Fabric
  • Lakehouse do Microsoft Fabric via Ponto de Extremidade da Análise do SQL
  • Bancos de Dados Espelhados do Microsoft Fabric via Ponto de Extremidade de Análise do SQL, incluindo:
    • Banco de Dados SQL do Azure
    • Instância Gerenciada de SQL do Azure
    • Azure Cosmos DB
    • Banco de Dados SQL do Microsoft Fabric
    • Azure Databricks
    • Snowflake
    • Abrir bancos de dados espelhados
  • banco de dados SQL do Azure
  • Datamart

Recursos

A API do Microsoft Fabric para GraphQL fornece recursos abrangentes que simplificam o acesso a dados para aplicativos. Da geração automática de código ao monitoramento de desempenho, esses recursos permitem criar APIs de dados robustas com configuração mínima.

Geração automática de esquema

  • Descoberta de esquema: descobre e mapeia esquemas de fonte de dados automaticamente para tipos graphQL
  • Geração de consulta e mutação: cria consultas e mutações do GraphQL com base em sua estrutura de dados
  • Geração de resolvedor: gera automaticamente os resolvedores necessários para buscar dados de suas fontes
  • Código de teste local: gera código de exemplo para teste e desenvolvimento imediatos

Flexibilidade da fonte de dados

  • Várias fontes de dados: Conectar e consultar várias fontes de dados com suporte à consulta expandida (fan-out)
  • Objetos de banco de dados: suporte total para tabelas, exibições e procedimentos armazenados em bancos de dados SQL e armazéns
  • Exposição seletiva: escolha objetos e colunas específicos para expor por meio da API
  • Modelagem de Relacionamentos: estabelecer relacionamentos um-para-um, um-para-muitos e muitos-para-muitos entre entidades de dados

Operações e monitoramento

  • Monitoramento de desempenho: dashboard interno e registro em log de solicitação para acompanhar o comportamento e o uso da API

Evolução do esquema sem controle de versão

O GraphQL adota uma abordagem exclusiva para a evolução da API evitando o controle de versão tradicional. Em vez de criar pontos de extremidade v1, v2 e v3, as APIs do GraphQL evoluem continuamente:

  • Alterações aditivas: você pode adicionar novos tipos, campos e recursos sem interromper as consultas existentes. Os clientes solicitam apenas os campos de que precisam, para que novos campos não os afetem.
  • Compatibilidade com versões anteriores: as consultas existentes continuam funcionando mesmo com o aumento do esquema, pois o GraphQL retorna apenas dados solicitados explicitamente.
  • Depreciação ao invés de remoção: os campos podem ser marcados como obsoletos em vez de removidos imediatamente, dando aos clientes tempo para se adaptarem.
  • Ponto de extremidade único: os aplicativos sempre se conectam ao mesmo ponto de extremidade, independentemente das alterações de esquema.

Essa abordagem simplifica a manutenção da API e as atualizações do cliente em comparação com as APIs tradicionais com versões. Quando você modifica seu esquema de API do GraphQL no Fabric, os aplicativos existentes continuam funcionando desde que você adicione novos recursos em vez de remover ou renomear campos existentes. Para obter mais informações sobre como gerenciar alterações de esquema, consulte API do Fabric para introspecção do GraphQL e exportação de esquema.

Experiência de edição interativa

A API para GraphQL inclui um editor que permite desenvolver e testar suas consultas e mutações facilmente. Os recursos do editor incluem:

  • Um painel de resultados para visualizar a saída de consultas e mutações
  • Suporte para parâmetros de consulta e mutação
  • Intellisense que dá suporte a nomes de objeto de esquema e sintaxe graphQL

Para obter mais informações sobre como usar o editor do GraphQL, consulte a API para o editor do GraphQL.

Limitações

Consulte as limitações da API para GraphQL para obter mais informações.