Condividi tramite


Graph Query Language (GQL) (anteprima)

Cambiare i servizi usando l'elenco a discesa Version .Switch services using the Version drop-down list. Altre informazioni sulla navigazione.
Si applica a: ✅ Esplora dati di Azure in Microsoft Fabric ✅

Graph Query Language (GQL) consente di usare criteri di ricerca a grafo standardizzati. GQL segue lo standard ISO GQL per le query di database a grafo.

Annotazioni

Il supporto GQL è disponibile in anteprima. Le funzionalità e la sintassi possono cambiare in base al feedback e allo sviluppo in corso.

Introduzione

Graph Query Language (GQL) è uno standard ISO emergente per l'esecuzione di query sui database a grafo. GQL consente di usare la sintassi simile a SQL per la corrispondenza dei criteri di grafo, quindi è più semplice analizzare le relazioni nei dati. Questo articolo illustra come usare GQL, i vantaggi e le funzionalità principali.

GQL offre funzionalità di corrispondenza dei criteri di grafo standardizzate per l'analisi delle relazioni nei dati usando la sintassi standard ISO.

Come iniziare

Per usare GQL, è necessario:

  • Origine dati del grafo che rappresenta un modello a grafo o una funzione che restituisce un grafo temporaneo che termina con un operatore make-graph (vedere il passaggio 1).
  • Impostare proprietà specifiche della richiesta client (vedere il passaggio 2).

Passaggio 1: Creare un riferimento a un grafo

Prima di usare GQL, creare un'origine dati del grafo. Questo articolo usa un operatore make-graph in memoria, ma è consigliabile usare uno snapshot del grafo per gli scenari di produzione.

.create-or-alter function G_doc() {
    let nodes = datatable(id:string, lbl:string, name:string, properties:dynamic)
    [
        "p1","Person","Alice",dynamic({"age": 25}),
        "p2","Person","Bob",dynamic({"age": 30}),
        "p3","Person","Carol",dynamic({"age": 28}),
        "p4","Person","David",dynamic({"age": 35}),
        "p5","Person","Emma",dynamic({"age": 26}),
        "c1","Company","TechCorp",,
        "c2","Company","DataSoft",,
        "c3","Company","CloudInc",,
        "ct1","City","Seattle",,
        "ct2","City","Portland",,
        "ct3","City","San Francisco",
    ];
    let edges = datatable(source:string, target:string, lbl:string, since:int)
    [
        "p1","c1","works_at",2020,
        "p2","c1","works_at",2022,
        "p3","c2","works_at",2023,
        "p4","c3","works_at",2021,
        "p5","c1","works_at",2024,
        "p1","ct1","located_at",2019,
        "p2","ct1","located_at",2021,
        "p3","ct2","located_at",2022,
        "p4","ct3","located_at",2020,
        "p5","ct2","located_at",2023,
        "c1","ct1","located_at",2015,
        "c2","ct2","located_at",2018,
        "c3","ct3","located_at",2017,
        "p1","p2","knows",2019,
        "p2","p3","knows",2021,
        "p3","p4","knows",2022,
        "p4","p5","knows",2023,
        "p1","p4","likes",2020,
        "p4","p1","likes",2020,
        "p5","p2","likes",2022
    ];
    edges
    | make-graph source --> target with nodes on id
}

Passaggio 2: Configurare le proprietà della richiesta client

Per eseguire query GQL, impostare tre proprietà della richiesta client. Impostare queste proprietà tramite l'SDK, l'API o direttamente nell'interfaccia utente Web di Kusto Explorer o di Esplora dati di Azure usando le direttive .

Per eseguire query GQL, impostare tre proprietà della richiesta client. Impostare queste proprietà tramite l'SDK, l'API o direttamente nel set di query Kusto Explorer o KQL usando le direttive .

Impostare le proprietà della richiesta client

Importante

Eseguire ogni direttiva separatamente prima di eseguire la query GQL. Le direttive configurano l'ambiente di query per l'esecuzione GQL.

#crp query_language=gql
#crp query_graph_reference=G_doc()

Per usare le etichette in GQL, impostare il nome della colonna etichetta:

#crp query_graph_label_name=lbl

Suggerimento

Le etichette sono facoltative in GQL, ma vengono spesso usate per filtrare nodi e archi in base al tipo. Impostare il nome della colonna etichetta per usare le etichette nelle query GQL.

Impostare le proprietà della richiesta client a livello di codice

Per l'accesso a livello di codice, impostare queste proprietà della richiesta client:

  • query_language: impostare su "gql".
  • query_graph_reference: impostare sul nome della funzione del grafo , ad esempio "G_doc()".
  • query_graph_label_name: impostare sul nome della colonna dell'etichetta , ad esempio "lbl".

Passaggio 3: Eseguire query GQL

Al termine dell'installazione, eseguire query GQL usando la sintassi GQL standard. Usare gli esempi seguenti per esplorare le funzionalità GQL di base e avanzate.

Esempi

Qui sono disponibili esempi di base per la corrispondenza dei criteri e le etichette. Per esempi più complessi, vedere Modelli di query GQL, esempi e scenari comuni. Per la documentazione di riferimento, inclusi i concetti fondamentali e i dettagli della funzione, vedere Informazioni di riferimento su Graph Query Language (GQL).

Query GQL di esempio per la corrispondenza dei criteri di base

MATCH (n)-[e]->(n2)
RETURN COUNT(*) as CNT

Risultato

Nella tabella seguente viene illustrato il risultato della query.

CNT
20

Esempio di query GQL con etichette

MATCH (p:Person)-[e]->(target)
RETURN p.name, target.name, e.lbl
ORDER BY p.name, target.name
LIMIT 2

Risultato

Nella tabella seguente viene illustrato il risultato della query.

p.name target.name e.lbl
Alice Bob Sa
Alice Davide preferenza