Partager via


fonction graph (préversion)

S’applique à : ✅Microsoft FabricAzure Data Explorer

Remarque

Cette fonctionnalité est actuellement disponible en préversion publique. Les fonctionnalités et la syntaxe sont susceptibles de changer avant la disponibilité générale.

La graph fonction est une fonction intrinsèque qui permet l’interrogation d’une entité de graphe persistante, similaire à celle des fonctions et cluster()database()external_table()des table()fonctions. Il prend en charge la récupération de l’instantané le plus récent du graphique, d’un instantané spécifique ou de la création d’un graphique temporaire à partir du modèle.

Autorisations

Pour exécuter cette fonction, l’utilisateur a besoin d’autorisations de visionneuse de base de données.

Syntaxe

graph( GraphName)

graph( GraphName,SnapshotName)

graph( GraphName,snapshot=SnapshotName)

graph( GraphName,Éphémère)

Paramètres

Nom Catégorie Obligatoire Descriptif
GraphName string ✔️ Nom du modèle de graphe à interroger.
SnapshotName string Nom d’un instantané spécifique à récupérer. S’il n’est pas spécifié, l’instantané le plus récent est utilisé.
temporaire bool Si true, crée un graphique temporaire à partir du modèle (aucun instantané n’est utilisé). Si false, utilise la dernière capture instantanée (identique à l’omission de ce paramètre).

Retours

La graph fonction retourne un graphique et doit être suivie d’un opérateur de graphe. La fonction récupère le nom du modèle de graphe spécifié, soit comme suit :

  • Instantané le plus récent (valeur par défaut ou quand false est spécifié)
  • Instantané nommé spécifique
  • Graphique temporaire du modèle (quand true il est spécifié)

Exemples

Interroger la dernière capture instantanée

L’exemple suivant interroge l’instantané le plus récent d’un graphe persistant nommé « SecurityGraph » :

graph("SecurityGraph")
| graph-match (user)-[permission]->(resource)
  where user.type == "User" and resource.type == "Database"
  project UserName = user.name, ResourceName = resource.name, Permission = permission.type

Interroger un instantané spécifique

L’exemple suivant interroge un instantané spécifique du graphique :

graph("SecurityGraph", "Snapshot_2025_05_01")
| graph-match (attacker)-[attacks]->(target)-[connects]->(system)
  where attacker.name == "MaliciousActor"
  project Attacker = attacker.name, Target = target.name, System = system.name

Requête avec une syntaxe de paramètre nommée

L’exemple suivant utilise la syntaxe de paramètre nommée pour spécifier un instantané :

graph("SecurityGraph", snapshot="Snapshot_2025_05_01")
| graph-shortest-paths (start)-[e*1..20]->(end)
  where start.name == "Alice" and end.name == "Database"
  project PathLength = array_length(e), Path = e

Créer un graphique temporaire à partir du modèle

L’exemple suivant crée un graphique temporaire à partir du modèle, similaire à l’opérateur make-graph :

graph("SecurityGraph", true)
| graph-match (user)-[permission]->(resource)
  where user.type == "User" and resource.type == "Database"
  project UserName = user.name, ResourceName = resource.name, Permission = permission.type

Utiliser false pour spécifier la dernière capture instantanée

L’exemple suivant spécifie false explicitement d’utiliser la dernière capture instantanée, ce qui équivaut à omettre le deuxième paramètre :

graph("SecurityGraph", false)
| graph-match (user)-[permission]->(resource)
  where user.type == "User" and resource.type == "Database"
  project UserName = user.name, ResourceName = resource.name, Permission = permission.type