Compartilhar via


operador graph-to-table

Aplica-se a: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

O graph-to-table operador exporta nós ou bordas de um grafo para tabelas.

Sintaxe

Nodos

G|graph-to-tablenodes [ with_node_id=ColumnName ]

Bordas

G|edgesgraph-to-table [ with_source_id=ColumnName ] [ with_target_id=ColumnName ] [ asTableName ]

Nós e bordas

G|graph-to-tablenodesasNodesTableName [ with_node_id=ColumnName ],edgesasEdgesTableName [ with_source_id=ColumnName ] [ with_target_id=ColumnName ]

Parâmetros

Nome Tipo Obrigatório Descrição
G string ✔️ A origem do grafo de entrada.
NodesTableName string O nome da tabela de nós exportados.
EdgesTableName string O nome da tabela de bordas exportadas.
ColumnName string Exporte a ID de hash do nó, a ID de hash do nó de origem ou a ID de hash do nó de destino com o nome da coluna fornecido.

Devoluções

Nodos

O graph-to-table operador retorna um resultado tabular, no qual cada linha corresponde a um nó no grafo de origem. As colunas retornadas são as propriedades do nó. Quando with_node_id for fornecida, a coluna hash do nó será do long tipo.

Bordas

O graph-to-table operador retorna um resultado tabular, no qual cada linha corresponde a uma borda no grafo de origem. As colunas retornadas são as propriedades do nó. Quando with_source_id ou with_target_id são fornecidos, a coluna de hash do nó é do long tipo.

Nós e bordas

O graph-to-table operador retorna dois resultados tabulares, correspondendo às descrições anteriores.

Exemplos

O exemplo a seguir indica como o graph-to-table operador exporta as bordas de um grafo para uma tabela. Os with_source_id parâmetros e with_target_id exportam o hash do nó para nós de origem e de destino de cada borda.

let nodes = datatable(name:string, type:string, age:long) 
[ 
	"Alice", "Person", 23,  
	"Bob", "Person", 31,  
	"Eve", "Person", 17,  
	"Mallory", "Person", 29,  
	"Trent", "System", 99 
]; 
let edges = datatable(source:string, destination:string, edge_type:string) 
[ 
	"Alice", "Bob", "communicatesWith",  
	"Alice", "Trent", "trusts",  
	"Bob", "Trent", "hasPermission",  
	"Eve", "Alice", "attacks",  
	"Mallory", "Alice", "attacks",  
	"Mallory", "Bob", "attacks"  
]; 
edges 
| make-graph source --> destination with nodes on name
| graph-to-table edges with_source_id=SourceId with_target_id=TargetId

Saída

SourceId TargetId fonte destino edge_type
-3122868243544336885 -7133945255344544237 Alice Bob communicatesWith
-3122868243544336885 2533909231875758225 Alice Trent Confia
-7133945255344544237 2533909231875758225 Bob Trent hasPermission
4363395278938690453 -3122868243544336885 Ev Alice Ataques
3855580634910899594 -3122868243544336885 Mallory Alice Ataques
3855580634910899594 -7133945255344544237 Mallory Bob Ataques

Obter nós

O exemplo a seguir mostra como o graph-to-table operador exporta os nós de um grafo para uma tabela. O with_node_id parâmetro exporta o hash do nó.

let nodes = datatable(name:string, type:string, age:long) 
[ 
	"Alice", "Person", 23,  
	"Bob", "Person", 31,  
	"Eve", "Person", 17,
	"Trent", "System", 99
]; 
let edges = datatable(source:string, destination:string, edge_type:string) 
[ 
	"Alice", "Bob", "communicatesWith",  
	"Alice", "Trent", "trusts",  
	"Bob", "Trent", "hasPermission",  
	"Eve", "Alice", "attacks",  
	"Mallory", "Alice", "attacks",  
	"Mallory", "Bob", "attacks"
]; 
edges 
| make-graph source --> destination with nodes on name
| graph-to-table nodes with_node_id=NodeId

Saída

NodeId nome tipo idade
-3122868243544336885 Alice Pessoa vinte e três
-7133945255344544237 Bob Pessoa 31
4363395278938690453 Ev Pessoa 17
2533909231875758225 Trent Sistema 99
3855580634910899594 Mallory

O exemplo a seguir usa o graph-to-table operador para exportar os nós e as bordas de um grafo para uma tabela.

let nodes = datatable(name:string, type:string, age:long) 
[ 
	"Alice", "Person", 23,  
	"Bob", "Person", 31,  
	"Eve", "Person", 17,
	"Trent", "System", 99
]; 
let edges = datatable(source:string, destination:string, edge_type:string) 
[ 
	"Alice", "Bob", "communicatesWith",  
	"Alice", "Trent", "trusts",  
	"Bob", "Trent", "hasPermission",  
	"Eve", "Alice", "attacks",  
	"Mallory", "Alice", "attacks",  
	"Mallory", "Bob", "attacks"
]; 
edges 
| make-graph source --> destination with nodes on name
| graph-to-table nodes as N with_node_id=NodeId, edges as E with_source_id=SourceId;
N; 
E

Tabela de saída 1

NodeId nome tipo idade
-3122868243544336885 Alice Pessoa vinte e três
-7133945255344544237 Bob Pessoa 31
4363395278938690453 Ev Pessoa 17
2533909231875758225 Trent Sistema 99
3855580634910899594 Mallory

Tabela de saída 2

SourceId fonte destino edge_type
-3122868243544336885 Alice Bob communicatesWith
-3122868243544336885 Alice Trent Confia
-7133945255344544237 Bob Trent hasPermission
4363395278938690453 Ev Alice Ataques
3855580634910899594 Mallory Alice Ataques
3855580634910899594 Mallory Bob Ataques