Convertire dati relazionali in un modello a grafo in Microsoft Fabric

Note

Questa funzionalità è attualmente disponibile in anteprima pubblica. Questa anteprima viene messa a disposizione senza contratto di servizio e non è consigliata per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate. Per ulteriori informazioni, vedere Condizioni supplementari per l'uso delle versioni di anteprima di Microsoft Azure.

La conversione di dati relazionali in un modello a grafo in Microsoft Fabric consente di eseguire query direttamente sulle connessioni anziché scrivere join ripetuti. Questo articolo fornisce un flusso di lavoro di conversione pratico per il mapping di tabelle relazionali a tipi di nodo e tipi di arco, quindi convalidare il modello prima di ridimensionarlo.

Se si sta ancora valutando se il grafo è adatto per il carico di lavoro, prima di tutto, esaminare Confrontare i database del grafo e relazionali.

Usare questo articolo come elenco di controllo per la conversione. Per le regole di modellazione dettagliate, vedere Progettare uno schema a grafo.

Prerequisiti

Flusso di lavoro di conversione

Usare questa sequenza quando si converte dati relazionali:

  1. Esaminare le tabelle di origine e identificare le entità nei dati (clienti, prodotti, ordini), come ogni riga viene identificata in modo univoco e come le tabelle si connettono tra loro.
  2. Decidere quali entità diventano tipi di nodo nel grafico e quale colonna identifica in modo univoco ognuno di essi.
  3. Decidere quali connessioni di tabella diventano tipi di arco e in quale direzione vanno (ad esempio, CustomeracquistiOrder).
  4. Applicare il modello di mapping corretto in base alla struttura della tabella, ovvero uno-a-molti, molti-a-molti, valori incorporati o catene di tabelle correlate.
  5. Compilare il modello nell'editor dei modelli a grafo e verificare che i tipi di nodo e i tipi di arco vengano visualizzati come previsto.

Passaggio 1: Profilatura delle tabelle relazionali di origine

Verificare gli elementi seguenti nelle tabelle di origine:

  • Entità primarie che rappresentano elementi distinti, ad esempio clienti, prodotti o ordini.
  • Colonne chiave che identificano in modo univoco ogni riga di entità, ad esempio CustomerID, OrderIDo ProductSKU.
  • Colonne chiave esterna che definiscono relazioni tra tabelle, ad esempio CustomerID nella Orders tabella che fa riferimento alla Customers tabella.
  • Colonne che potrebbero essere entità incorporate, ad esempio Country o Department.

Per criteri decisionali dettagliati su entità, chiavi, proprietà e vincoli di mapping, vedere Progettare uno schema del grafo.

Passaggio 2: Eseguire il mapping delle entità ai tipi di nodo

Mappare ogni entità a un tipo di nodo.

Elemento relazionale Mappatura del grafo Example
Tabella delle entità Tipo di nodo Customers table ->Customer tipo di nodo
Chiave primaria Chiave del nodo (ID) CustomerID_K
Colonne descrittive Proprietà del nodo FirstName, LastName, EmailAddress

Usare una colonna chiave con valori stabili e univoci. Se una colonna non è univoca, configurare una chiave composta.

Per indicazioni sulla progettazione, vedere Progettare uno schema a grafo.

Passaggio 3: Eseguire il mapping delle relazioni ai tipi di arco

Mappare ogni percorso di relazione a un tipo di arco diretto.

Elemento relazionale Mappatura del grafo Example
Relazione di chiave esterna Tipo di arco purchases
Tabella di riferimento Tabella di associazione dei margini adventureworks_orders
Colonne di join padre/figlio Mappature sorgente e destinazione CustomerID_FK ->CustomerID_K

Scegliere le etichette di arco come frasi verbali che si leggano chiaramente nelle query, ad esempio purchases, contains, e belongsTo.

Per i requisiti di mappatura dei bordi, vedere Scegliere i tipi di bordo. Per i passaggi dell'interfaccia utente, vedere Esercitazione: Aggiungere tipi di arco al grafico.

Passaggio 4: Applicare modelli relazionali a grafo comuni

Usare questi modelli durante la conversione, quindi seguire le guide collegate per un'implementazione dettagliata. Per le descrizioni complete dei criteri, vedere Modelli tabulari a grafo comuni.

Passaggio 5: Compilare e convalidare il modello a grafo

Dopo aver completato i mapping, compilare e convalidare il modello a grafo nell'editor:

  1. Aggiungi tipi di nodo e configura gli ID dalle colonne chiave.

  2. Aggiungi tipi di arco e mappa le colonne di origine e destinazione.

  3. Selezionare Salva per verificare il modello e caricare i dati.

  4. Verificare che nell'area di disegno vengano visualizzati i tipi di nodo e di arco previsti nelle etichette.

  5. Eseguire query di convalida per confermare le relazioni e la cardinalità. Per esempio:

    MATCH (c:Customer)-[:purchases]->(o:Order)
    RETURN c.CustomerID_K, COUNT(o) AS orderCount
    ORDER BY orderCount DESC
    

    Aggiornare le etichette in modo che corrispondano allo schema. Verificare che ogni tipo di arco restituisca i risultati e che i conteggi siano corretti.

Se mancano i bordi previsti, verificare i valori delle colonne join e i tipi di dati nelle tabelle di mapping.

Risolvere i problemi di conversione comuni

  • Nessun bordo creato: verificare che le colonne di mapping di origine e di destinazione corrispondano ai valori chiave del nodo e ai tipi di dati.
  • Nodi duplicati: verificare che le colonne chiave del nodo siano univoche o passare a una chiave composta.
  • Grafico sovramodelle: mantenere i campi descrittivi come proprietà, a meno che non sia necessario attraversarli come entità.
  • Grafico sottomodellato: estrarre colonne condivise nei tipi di nodi quando l'analisi basata sulle relazioni è necessaria.