Condividi tramite


Eseguire query su più origini dati nell'API Fabric per GraphQL

Nell'API Fabric per GraphQL è possibile esporre molte origini dati tramite un singolo elemento API. Questa funzionalità consente di eseguire una singola query che recupera i dati in più origini dati.

Una query su più origini dati è una sequenza di query che eseguono operazioni su origini dati diverse.

Questa funzionalità migliora le prestazioni dell'applicazione riducendo il numero di round trip tra l'applicazione e l'API per GraphQL.

Nota

Una richiesta di origine dati multipla effettua il fan-out di singole richieste alle origini dati. Non è possibile creare relazioni tra tipi che si estendono su più origini dati. Inoltre, non esiste una garanzia sull'ordine in cui vengono eseguite le singole richieste.

Esempio di query

L'esempio seguente mostra una query che si estende sia su ContosoSales che su ContosoInventory:

query {
  customers (first: 1) {
    items {
      FirstName
      LastName
    }
  }
  inventories (first: 1) {
    items {
      Name
    }
  }
}

Questa richiesta recupera il primo nodo dalla query dei clienti derivata dall'origine dati ContosoSales e il primo nodo dalla query di inventario derivata dall'origine dati ContosoInventory .

L'output per la richiesta è:

{
  "data": {
    "customers": {
      "items": [
        {
          "FirstName": "Orlando",
          "LastName": "Gee"
        }
      ]
    },
    "inventories": {
      "items": [
        {
          "Name": "AWC Logo Cap"
        }
      ]
    }
  }
}

L'output ha due parti: la prima sezione, "dati", contiene l'output della query dei clienti e la seconda sezione, "inventari", contiene l'output della query degli inventari.

Questo è l'aspetto della visualizzazione query quando si esegue questa richiesta:

Screenshot della schermata dell'editor che mostra una query che si estende su due origini dati.