Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Il grafo in Microsoft Fabric presenta alcune limitazioni funzionali. Questo articolo illustra alcune limitazioni chiave, ma non è un elenco completo. Controllare regolarmente la disponibilità di aggiornamenti.
Per informazioni su problemi comuni, vedere Grafico della risoluzione dei problemi.
Creazione di modelli a grafo
Origini dati
OneLake e Mirrored Database sono le fonti dati supportate per i grafi.
Tipi di dati
I modelli di grafici supportano i seguenti tipi di valore delle proprietà.
| Tipo di valore GQL | Descrizione |
|---|---|
BOOLEAN |
I valori sono true e false. |
INT (o INT64) |
I valori sono interi con segno a 64 bit. |
DOUBLE (o FLOAT64) |
I valori sono numeri IEEE-754 in virgola mobile a 64 bit. |
FLOAT (o FLOAT32) |
I valori sono numeri in virgola mobile a 32 bit. |
STRING |
I valori sono stringhe di caratteri Unicode codificate in UTF-8. La dimensione massima della proprietà è di 65.535 byte. |
ZONED DATETIME |
I valori sono timestamp insieme a un offset di fuso orario, con precisione di millisecondi. |
I seguenti tipi di colonne OneLake e Delta Lake sono supportati per l'ingestione nei grafici.
| Tipo OneLake | Mappa al tipo di valore della proprietà GQL |
|---|---|
BooleanType |
BOOLEAN |
ByteType |
INT (o INT64) |
IntegerType |
INT (o INT64) |
LongType |
INT (o INT64) |
FloatType |
DOUBLE (o FLOAT64) |
DoubleType |
DOUBLE (o FLOAT64) |
StringType |
STRING |
DateType |
ZONED DATETIME |
TimestampType |
ZONED DATETIME |
TimestampNtzType |
ZONED DATETIME |
Note
I tipi complessi o annidati di Delta Lake (MapType e StructType) non sono supportati. Puoi analizzare colonne di stringhe codificate in JSON al momento della query usando PARSE_JSON_STRING.
Elaborazione dei grafi e scala
Le operazioni di caricamento e aggiornamento dei grafi possono richiedere tempi di elaborazione estesi a seconda della dimensione del grafo, del numero di elementi del grafo (nodi e archi) e della dimensione dei payload di proprietà associati a tali elementi. I grafici grandi possono richiedere diverse ore per essere elaborati. Se un'operazione di caricamento o aggiornamento del grafo non è stata completata dopo 24 ore, invia una richiesta di supporto per ulteriori indagini.
Le capacità attuali di elaborazione dei grafi supportano grafi contenenti fino a circa 2 miliardi di elementi di grafo (nodi e archi). La capacità effettiva può variare in base alla struttura del grafo e alla dimensione del carico utile della proprietà. Se il tuo carico di lavoro dovrebbe superare questi limiti, contatta il supporto tecnico Microsoft per avere indicazioni.
Colonne di partizione
Le colonne di partizione di Delta Lake hanno un supporto limitato come proprietà del grafo:
- Le colonne di partizione usate come unica chiave primaria vengono sempre rifiutate.
- Le colonne di partizione generate non sono supportate.
- I tipi di colonne di partizione complessi e decimali (
Decimal,Binary,Array,Map, eStruct) vengono eliminati con un avvertimento.
Modifiche agli schemi
I cambiamenti nello schema attivano un ricaricamento del grafo.
Querying
Sentieri a lunghezza variabile
Il path builder Explore UI supporta fino a otto salti per pattern di lunghezza variabile. Questo limite dell'interfaccia utente non si applica alle query GQL inserite nell'editor di codice.
Graph supporta i ALL prefissi di ricerca e ANY SHORTEST percorso.
ALL SHORTEST e ANY non sono supportati.
La tabella seguente riassume il supporto GQL a lunghezza variabile:
| Ricerca di percorso e modalità di percorso | Quantificatore fisso o limitato | Quantificatore illimitato |
|---|---|---|
ALL WALK (impostazione predefinita) |
Supportato | Non supportato perché gli elementi ripetuti possono produrre infiniti percorsi. |
ALL TRAIL, ALL SIMPLE o ALL ACYCLIC |
Supportato | Supportato, ma il numero di percorsi può comunque essere elevato. |
ANY SHORTEST WALK |
Supportato | Supportato per una semplice raggiungibilità degli endpoint con un solo margine anonimo quantificato tra due nodi. Un percorso delimitato da questa forma non limitata può essere usato solo con PATH_LENGTH(path) e, insieme ad essa, path IS NULL; il percorso completo non si materializza. Vedi Pattern a lunghezza variabile illimitata. |
ANY SHORTEST TRAIL, ANY SHORTEST SIMPLE o ANY SHORTEST ACYCLIC |
Supportato | Supportato. |
I quantificatori fissi e limitati sono {n}, {m,n}, e {,n}. I quantificatori illimitati sono {m,}, *, e +. Per maggiori informazioni, vedi i pattern grafici GQL.
Posizionamento del predicato del percorso
GQL distingue i predicati che vincolano i percorsi idonei dai predicati che filtrano i percorsi dopo che un prefisso di ricerca di percorso li seleziona. Per alcune ANY SHORTEST forme di query, Graph può attualmente applicare una condizione a livello MATCH ... WHERE di istruzione prima della selezione del percorso.
Per rendere esplicita la fase prevista, posizionare i predicati di idoneità in linea nei pattern nodi o edge. Per il filtraggio post-selezione, usa un'istruzione separata FILTER dopo MATCH. Per esempi, vedi Posiziona predicati prima o dopo la selezione del percorso.
Filtri a predicati a lista
I filtri a lista di predicati attualmente non supportano:
-
EXISTSsottoquery. - Funzioni aggregate sull'elemento legato localmente. È supportata l'aggregazione orizzontale su una lista di gruppi che racchiude.
Per la sintassi supportata e la semantica dei risultati, vedi Elenco delle funzioni predicate.
Dimensioni dei risultati
Graph tronca una risposta alla query quando la sua rappresentazione binaria interna supera i 64 MB. Graph restituisce le righe che corrispondono e riporta un avviso aggiuntivo con codice 01000 di stato pubblico e GQLSTATUS 01M11canonico . I risultati intermedi sono limitati a 128 MB.
La risposta non include un token di continuazione per le righe omesse dalla troncazione. Restringi il risultato con filtri, proiezioni specifiche o LIMIT, e poi esegui di nuovo la query.
Interruzione temporanea
L'esecuzione dell'API di query ha un timeout totale di 20 minuti, incluse le richieste di continuazione. Se l'esecuzione supera questo limite, l'API restituisce HTTP 408 con codice QueryTimeoutdi errore .
Subqueries
CALL, OPTIONAL CALL, e sono supportate sottoquery procedura-modulo EXISTS .
Le sottoquery inline CALL possono essere annidate e importare implicitamente variabili da scope che racchiudono. Le chiamate di procedure nominate, liste esplicite di importazione di variabili come CALL (p) { ... }, solo EXISTSpattern grafico , e sottoquery scalari (VALUE { ... }) non sono supportate.
Funzione di aggregazione
Sono supportate le funzioni di aggregazione seguenti:
-
COUNT,COUNT(*),SUM,AVG,MINeMAX -
COLLECT_LIST,COLLECT_ONEeCOLLECT_ELEMENTS -
DISTINCTvarianti di tutte le funzioni precedenti - Varianti orizzontali (riga per riga, su variabili/liste di gruppo) di tutte le opzioni sopra
Le seguenti funzioni di aggregazione non sono ancora supportate:
-
PERCENTILE_CONTePERCENTILE_DISC -
STDDEV_POPeSTDDEV_SAMP PRODUCT
Impostare le operazioni
UNION ALL e UNION DISTINCT sono supportati.
INTERSECT, EXCEPT, e OTHERWISE non sono ancora supportati.
Istruzioni e clausole GQL supportate
Sono supportate le seguenti istruzioni e clausole fondamentali GQL:
-
MATCHeOPTIONAL MATCH -
WHEREFiltri -
LETLegami variabili -
FOR ... INElenco che si srotella con indicizzazione opzionaleORDINALITY -
NEXT, inclusi gli stadi di query che contengonoUNION,UNION DISTINCT, oUNION ALL -
RETURNeRETURN DISTINCT GROUP BY-
ORDER BYconNULLS FIRSToNULLS LAST -
LIMITeOFFSET -
UNION ALLeUNION DISTINCT -
CALL,OPTIONAL CALLeEXISTS -
CASTcon una matrice di conversione di tipo ampia - Funzioni scalari e aggregate supportate elencate nelle espressioni, predicati e funzioni GQL
Operazioni DML e DDL
Le operazioni del Data Manipulation Language (DML) come INSERT, UPDATE, e DELETE non sono supportate tramite GQL. Le operazioni del Data Definition Language (DDL) per la mutazione dello schema non sono supportate.
Esportazione e visualizzazione dei dati
L'esportazione dei risultati delle query del grafo o delle strutture del grafo non è attualmente supportata.
La connessione Power BI direttamente a un grafico per gli scenari di visualizzazione non è attualmente supportata.
Conformità GQL
Per un mapping dettagliato delle funzionalità GQL supportate rispetto allo standard ISO/IEC 39075:2024, tra cui conformità minima, funzionalità facoltative per gruppo e funzionalità non ancora supportate, vedere Conformità standard GQL.
La conformità agli standard GQL è ancora in corso per le seguenti funzionalità.
Flusso di controllo e operazioni di insiemi
-
EXCEPT ALListruzioni eEXCEPT DISTINCT -
INTERSECT ALListruzioni eINTERSECT DISTINCT -
OTHERWISEistruzione
Ricerca di percorso e abbinamento di pattern
-
ALL SHORTESTRicerca di percorso (non supportato) -
ANYRicerca di percorso - Predicati di criteri non locali
- Coerenza topologica rilassata
- Caratteri jolly
Predicates
- Predicato del test dell'etichetta (
IS LABELED) - predicato
IS DIRECTED - Predicato normalizzato
- Predicato di origine/destinazione
- predicato
ALL_DIFFERENT - predicato
IS DISTINCT - predicato
SAME - predicato
REGEXP_CONTAINS
Tipi di valore runtime supportati
| Tipo di valore runtime | Rappresentazione/estensione | Limit |
|---|---|---|
BOOLEAN |
true e false |
|
INT (o INT64) |
Intero con segno a 64 bit | |
UINT (o UINT64) |
Intero senza segno a 64 bit | |
DOUBLE (o FLOAT64) |
IEEE-754 binary64 |
Nessun controllo solo finito; i valori non finiti sono accettati |
STRING |
Stringa Unicode | 65.534 byte (lunghezza uint16 su disco) |
ZONED DATETIME |
Millisecondi dall'epoca Unix più offset int32 UTC | Intervallo int64 millisecondi |
DURATION(DAY TO SECOND) |
Precisione in millisecondi | |
NODE |
uint64 raw | |
EDGE |
uint64 raw | |
LIST |
Elenco omogeneo tipizzato | 65.534 elementi (uint16 lunghezza su disco) |
RECORD |
Struttura di campi tipizzati | |
PATH |
Elenco alternato di nodi e archi che inizia e finisce sempre con un nodo | 65.534 elementi (uint16 lunghezza su disco) |
Tipi di valore runtime non ancora supportati
-
INT8,INT16, eINT32i tipi di valore (INT64è supportato) -
FLOAT16eFLOAT32tipi di valore (FLOAT64è supportato) -
UINT8,UINT16, eUINT32i tipi di valore (UINT64è supportato) -
ZONED TIMETipo di valore -
DATEValore Tipo come tipo standalone. Date ingerite che si mappano con la Data-Ora Zonata. -
LOCAL DATETIMETipo di valore -
LOCAL TIMETipo di valore -
DURATION(YEAR TO MONTH)Tipo di valore -
BYTESTipo di valore. L'ingestione è supportata, ma il tipo non è consultabile come proprietà memorizzata. -
VECTORTipo di valore
Funzioni ed espressioni
- Funzione
PROPERTIES -
NORMALIZEcon leNFKCforme eNFKD - Funzione
DURATION_BETWEEN - Espressioni ricercate
CASE WHEN - Sottoquery scalari
- Concatenazione del valore del percorso
- Concatenazione della stringa di byte,
TRIM, e funzioni di lunghezza - Funzione semplice
TRIMcon unaTRIMspecifica - Funzione multicarattere
TRIM CARDINALITY
Aggregation
-
PERCENTILE_CONTfunzione di aggregazione -
PERCENTILE_DISCfunzione di aggregazione -
PRODUCTfunzione di aggregazione -
STDDEV_POPfunzione di aggregazione -
STDDEV_SAMPfunzione di aggregazione
Other
- Passaggio dei parametri (
$paramspecifica dinamica dei parametri) - Utente sessione (
SESSION_USER) -
CALLDichiarazione procedura nominata -
CALLsottoquery con liste esplicite di importazione variabili - Gestione del catalogo. I nomi dei grafi e dei vincoli vengono generati automaticamente.
Catalog
Note
I nomi dei grafi e dei vincoli vengono generati automaticamente e non possono essere specificati né nell'interfaccia né nello schema JSON.
| Area del catalogo | Limite attuale / comportamento | Raccomandazione |
|---|---|---|
| Schema del grafo | Un tipo di grafico per catalogo. | |
| Nome del grafo | Deve essere non vuoto; nessuna lunghezza massima esplicita. | 127 personaggi |
| Tipi di nodo | Massimo di circa 2 miliardi (spazio ID int32). | 64K |
| Tipi di spigoli | Massimo di circa 2 miliardi (spazio ID int32). | 64K |
| Etichette uniche dei nodi | Massimo di circa 2 miliardi; i duplicati all'interno di un tipo vengono rifiutati. | Derivati dai tipi di nodo |
| Etichette uniche dei bordi | Massimo di circa 2 miliardi; i duplicati all'interno di un tipo vengono rifiutati. | Derivato dai tipi di spigoli |
| Nomi unici delle proprietà | Massimo di circa 2 miliardi; nomi vuoti e duplicati all'interno di un tipo vengono rifiutati. | 64K x 10 |
| Proprietà per tipo di nodo | Nessun massimo esplicito; i nomi duplicati delle proprietà vengono rifiutati. | 256 |
| Proprietà per tipo di arco | Nessun massimo esplicito; i nomi duplicati delle proprietà vengono rifiutati. | 256 |
| Etichette per tipo di nodo | Nessun massimo esplicito; le etichette duplicate vengono rifiutate. | 64 |
| Etichette per tipo di spigolo | Nessun massimo esplicito; le etichette duplicate vengono rifiutate. | 64 |
| Proprietà chiave per vincolo | Nessun massimo esplicito; i nomi delle proprietà devono essere non vuoti. | 16 |
| Lunghezza del nome della proprietà | Non esplicitamente applicato oltre il non-vuoto. | 127 personaggi |
| Lunghezza nome etichetta | Non esplicitamente applicato oltre il non-vuoto. | 127 personaggi |
| Vincoli della chiave di bordo | Disabilitato di default (allow_edge_key_constraints flag). |
≤ il numero di tipi di archi |