Compartir a través de


función graph (versión preliminar)

Se aplica a: ✅Microsoft FabricAzure Data Explorer

Nota:

Esta característica actualmente está en su versión preliminar pública. La funcionalidad y la sintaxis están sujetas a cambios antes de la disponibilidad general.

La graph función es una función intrínseca que permite consultar una entidad de grafo persistente, similar a las cluster()funciones , database(), external_table()y table() . Admite la recuperación de la instantánea más reciente del grafo, una instantánea específica o la creación de un grafo transitorio a partir del modelo.

Permisos

Para ejecutar esta función, el usuario necesita permisos de visor de base de datos.

Sintaxis

graph( GraphName)

graph( GraphName,SnapshotName)

graph( GraphName,snapshot=SnapshotName)

graph( GraphName,Transeúnte)

Parámetros

Nombre Tipo Obligatorio Descripción
GraphName string ✔️ Nombre del modelo de grafo que se va a consultar.
SnapshotName string Nombre de una instantánea específica que se va a recuperar. Si no se especifica, se usa la instantánea más reciente.
transitorios bool Si truees , crea un gráfico transitorio a partir del modelo (no se usa ninguna instantánea). Si falsees , usa la instantánea más reciente (igual que omitir este parámetro).

Devoluciones

La graph función devuelve un gráfico y debe ir seguido de un operador de grafo. La función recupera el nombre del modelo de grafo especificado, ya sea como:

  • La instantánea más reciente (valor predeterminado o cuando false se especifica)
  • Una instantánea con nombre específica
  • Gráfico transitorio del modelo (cuando true se especifica)

Ejemplos

Consulta de la instantánea más reciente

En el ejemplo siguiente se consulta la instantánea más reciente de un gráfico persistente denominado "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

Consulta de una instantánea específica

En el ejemplo siguiente se consulta una instantánea específica del gráfico:

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

Consulta con sintaxis de parámetros con nombre

En el ejemplo siguiente se usa la sintaxis de parámetro con nombre para especificar una instantánea:

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

Creación de un grafo transitorio a partir del modelo

En el ejemplo siguiente se crea un gráfico transitorio a partir del modelo, similar al make-graph operador :

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

Usar false para especificar la instantánea más reciente

En el ejemplo siguiente se especifica false explícitamente el uso de la instantánea más reciente, que equivale a omitir el segundo parámetro:

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