Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo fornece um detalhamento da estrutura de definição para itens do Modelo do Graph.
Partes de definição
Esta tabela lista as partes de definição do Modelo do Graph.
| Caminho da parte de definição | tipo | Obrigatório | Description |
|---|---|---|---|
dataSources |
datasource[] | true | A matriz de fontes de dados |
graphDefinition |
GraphDefinition | true | A definição do grafo de mapeamento de dados |
graphType |
GraphType | true | A estrutura do grafo |
stylingConfiguration |
StylingConfiguration | true | A configuração de estilo de grafo |
Fonte de Dados
Descreve a estrutura da fonte de dados.
| Nome | Tipo | Description |
|---|---|---|
| nome | String | O nome da fonte de dados |
| tipo | "DeltaTable" | O tipo de fonte de dados |
| propriedades | DataSourceProperties | As propriedades da fonte de dados |
DataSourceProperties
As propriedades exigidas pelo tipo de fonte de dados. Para fontes DeltaTable, isso inclui o caminho da tabela.
| Nome | Tipo | Description |
|---|---|---|
| caminho | String | O caminho para a fonte de dados |
GraphDefinition
Descreve a definição do grafo de mapeamento de dados.
| Nome | Tipo | Description |
|---|---|---|
| nodeTables | NodeTable[] | A matriz de definições de mapeamento de dados do nó |
| edgeTables | EdgeTable[] | A matriz de definições de mapeamento de dados de borda |
NodeTable
Descreve a estrutura da definição de mapeamento de dados do nó.
| Nome | Tipo | Description |
|---|---|---|
| id | String | ID da definição de mapeamento de dados do nó |
| nodeTypeAlias | String | Alias do nó conforme definido no grafo |
| dataSourceName | String | O nome da fonte de dados |
| propertyMappings | PropertyMapping[] | A matriz de definições de mapeamento de dados de propriedade |
EdgeTable
Descreve a estrutura da definição de mapeamento de dados de borda.
| Nome | Tipo | Description |
|---|---|---|
| id | String | ID da definição de mapeamento de dados de borda |
| edgeTypeAlias | String | Alias da borda conforme definido no grafo |
| dataSourceName | String | O nome da fonte de dados |
| sourceNodeKeyColumns | String[] | A matriz de colunas que são mapeadas para o nó de origem |
| targetNodeKeyColumns | String[] | A matriz de colunas que são mapeadas para o nó de destino |
| propertyMappings | PropertyMapping[] | A matriz de definições de mapeamento de dados de propriedade |
PropertyMapping
Descreve a estrutura da definição de mapeamento de dados de propriedade.
| Nome | Tipo | Description |
|---|---|---|
| propertyName | String | O nome da propriedade |
| sourceColumn | String | O nome da coluna de origem |
| filtro | SingleFilter / GroupFilter | A definição de filtro |
SingleFilter
Descreve a estrutura de um único filtro.
| Nome | Tipo | Description |
|---|---|---|
| operador | String | O nome do operador do filtro |
| columnName | String | O nome da coluna para este filtro |
| value | Object | O valor de comparação. Dá suporte a cadeia de caracteres, número, dateTime e matrizes desses valores. |
GroupFilter
Descreve a estrutura de um filtro de grupo.
| Nome | Tipo | Description |
|---|---|---|
| operador | String | O nome do operador do filtro |
| filters | SingleFilter[] / GroupFilter[] | Os filtros desse filtro de grupo |
| e | SingleFilter[] / GroupFilter[] | Os filtros para AND lógico |
| or | SingleFilter[] / GroupFilter[] | Os filtros para OR lógico |
GraphType
Descreve a estrutura de um grafo.
| Nome | Tipo | Description |
|---|---|---|
| nodeTypes | NodeType[] | A matriz de estruturas de nó |
| edgeTypes | EdgeType[] | A matriz de estruturas de borda |
NodeType
Descreve a estrutura de um nó.
| Nome | Tipo | Description |
|---|---|---|
| alias | String | O alias |
| labels | String[] | A matriz de rótulos |
| primaryKeyProperties | String[] | A matriz de propriedades de chave primária |
| propriedades | Propriedade[] | A matriz de propriedades |
EdgeType
Descreve a estrutura de uma borda.
| Nome | Tipo | Description |
|---|---|---|
| alias | String | O alias |
| labels | String[] | A matriz de rótulos |
| sourceNodeType | NodeTypeReference | A estrutura do nó de origem |
| destinationNodeType | NodeTypeReference | A estrutura do nó de destino |
| propriedades | Propriedade[] | A matriz de propriedades |
Propriedade
Descreve a estrutura de uma propriedade.
| Nome | Tipo | Description |
|---|---|---|
| nome | String | O nome da propriedade |
| tipo | String | O tipo da propriedade |
NodeTypeReference
Descreve a estrutura de um NodeTypeReference.
| Nome | Tipo | Description |
|---|---|---|
| alias | String | O alias do nó referenciado |
StylingConfiguration
Descreve a estrutura da configuração de estilo.
| Nome | Tipo | Description |
|---|---|---|
| modelLayout | ModelLayout | O estilo e a configuração de layout para o modelo de grafo |
ModelLayout
Descreve a configuração de estilos de modelo.
| Nome | Tipo | Description |
|---|---|---|
| Posições | Cadeia de caracteres de dicionário<, Posição> | As posições dos nós |
| Estilos | Cadeia de caracteres de dicionário<, ModelStyle> | Os estilos do modelo de grafo |
| panorâmica | Posição | O painel de tela do modelo |
| zoomLevel | Integer | O nível de zoom da tela do modelo |
Cargo
Descreve uma posição 2D.
| Nome | Tipo | Description |
|---|---|---|
| x | Integer | O valor da coordenada x |
| y | Integer | O valor da coordenada y |
ModelStyle
Descreve o estilo de um elemento de modelo.
| Nome | Tipo | Description |
|---|---|---|
| size | Integer | O tamanho de um elemento de modelo |
Exemplo de fontes de dados
{
"dataSources": [
{
"name": "Customer_Table",
"type": "DeltaTable",
"properties": {
"path": "abfss://9e4b0e5d-3952-44df-9ac8-2503775e0425@onelake.dfs.fabric.microsoft.com/f66b6219-28a5-4738-8b37-0c486c661b15/Tables/Customers"
}
},
{
"name": "Employee_Table",
"type": "DeltaTable",
"properties": {
"path": "abfss://9e4b0e5d-3952-44df-9ac8-2503775e0425@onelake.dfs.fabric.microsoft.com/f66b6219-28a5-4738-8b37-0c486c661b15/Tables/Employees"
}
},
{
"name": "Order_Table",
"type": "DeltaTable",
"properties": {
"path": "abfss://9e4b0e5d-3952-44df-9ac8-2503775e0425@onelake.dfs.fabric.microsoft.com/f66b6219-28a5-4738-8b37-0c486c661b15/Tables/PurchaseOrders"
}
},
{
"name": "Product_Table",
"type": "DeltaTable",
"properties": {
"path": "abfss://9e4b0e5d-3952-44df-9ac8-2503775e0425@onelake.dfs.fabric.microsoft.com/f66b6219-28a5-4738-8b37-0c486c661b15/Tables/Products"
}
}
]
}
Exemplo de definição de grafo
{
"schemaVersion": "1.0.0",
"nodeTables": [
{
"id": "Customer_5b6cb156-c778-4fce-8606-f0f712c04818",
"nodeTypeAlias": "Customer_nodeType",
"dataSourceName": "Customer_Table",
"propertyMappings": [
{
"propertyName": "CustomerId",
"sourceColumn": "Customer_Id"
},
{
"propertyName": "FirstName",
"sourceColumn": "First_name"
},
{
"propertyName": "LastName",
"sourceColumn": "Last_name"
},
{
"propertyName": "Email",
"sourceColumn": "Email"
}
],
"filter": {
"and": [
{
"operator": "Contains",
"columnName": "First_name",
"value": "USA"
},
{
"operator": "Contains",
"columnName": "Last_name",
"value": "A"
}
]
}
},
{
"id": "Employee_f0f712c04818",
"nodeTypeAlias": "Employee_nodeType",
"dataSourceName": "Employee_Table",
"propertyMappings": [
{
"propertyName": "EmployeeId",
"sourceColumn": "Employee_Id"
},
{
"propertyName": "FirstName",
"sourceColumn": "First_Name"
},
{
"propertyName": "LastName",
"sourceColumn": "Last_Name"
},
{
"propertyName": "Role",
"sourceColumn": "Role"
}
],
"filter": {
"operator": "AND",
"filters": [
{
"operator": "Contains",
"columnName": "First_name",
"value": "USA"
},
{
"operator": "Contains",
"columnName": "Last_name",
"value": "A"
}
]
}
},
{
"id": "EmployeeCustomer_5b6cb156",
"nodeTypeAlias": "EmployeeCustomer_nodeType",
"dataSourceName": "Employee_Table",
"propertyMappings": [
{
"propertyName": "EmployeeId",
"sourceColumn": "Employee_Id"
},
{
"propertyName": "FirstName",
"sourceColumn": "First_Name"
},
{
"propertyName": "LastName",
"sourceColumn": "Last_Name"
},
{
"propertyName": "Role",
"sourceColumn": "Role"
},
{
"propertyName": "Email",
"sourceColumn": "Email"
}
],
"filter": {
"operator": "Equal",
"columnName": "Role",
"value": "Manager"
}
},
{
"id": "Product_5b6cb156-c778-4fce-8606-f0f712c04818",
"nodeTypeAlias": "Product_nodeType",
"dataSourceName": "Product_Table",
"propertyMappings": [
{
"propertyName": "CategoryId",
"sourceColumn": "Category_Id"
},
{
"propertyName": "ProductId",
"sourceColumn": "Product_Id"
},
{
"propertyName": "Name",
"sourceColumn": "Name"
},
{
"propertyName": "Price",
"sourceColumn": "Price"
},
{
"propertyName": "Cost",
"sourceColumn": "Cost"
}
],
"filter": {
"operator": "AND",
"filters": [
{
"operator": "GreaterThan",
"columnName": "Price",
"value": 100
},
{
"operator": "In",
"columnName": "CategoryId",
"value": ["Electronics", "Clothing", "Books"]
}
]
}
}
],
"edgeTables": [
{
"id": "CustomerPurchase_976cceac",
"edgeTypeAlias": "CustomerPurchase_edgeType",
"dataSourceName": "Order_Table",
"sourceNodeKeyColumns": ["Customer_Id_FK"],
"destinationNodeKeyColumns": ["Category_Id_FK", "Product_Id_FK"],
"propertyMappings": [
{
"propertyName": "Quantity",
"sourceColumn": "unit_price"
},
{
"propertyName": "Date",
"sourceColumn": "Date"
}
],
"filter": {
"and": [
{
"operator": "Contains",
"columnName": "Customer_Id_FK",
"value": "USA"
},
{
"operator": "Contains",
"columnName": "Customer_Id_FK",
"value": "A"
}
]
}
},
{
"id": "EmployeePurchase_29be49f2",
"edgeTypeAlias": "EmployeePurchase_edgeType",
"dataSourceName": "Order_Table",
"sourceNodeKeyColumns": ["Employee_Id_FK"],
"destinationNodeKeyColumns": ["Category_Id_FK", "Product_Id_FK"],
"propertyMappings": [
{
"propertyName": "Quantity",
"sourceColumn": "unit_price"
},
{
"propertyName": "Date",
"sourceColumn": "Date"
}
]
},
{
"id": "EmployeeSold_2530ecef620c",
"edgeTypeAlias": "Sold_edgeType",
"dataSourceName": "Order_Table",
"sourceNodeKeyColumns": ["Employee_Id_FK"],
"destinationNodeKeyColumns": ["Category_Id_FK", "Product_Id_FK"],
"propertyMappings": [
{
"propertyName": "CustomerId",
"sourceColumn": "unit_price"
},
{
"propertyName": "Date",
"sourceColumn": "Date"
},
{
"propertyName": "hasDiscount",
"sourceColumn": "EmployeeDiscount"
}
]
}
]
}
Exemplo de tipo de grafo
{
"schemaVersion": "1.0.0",
"nodeTypes": [
{
"alias": "Customer_nodeType",
"labels": ["Customer"],
"primaryKeyProperties": ["CustomerId"],
"properties": [
{
"name": "CustomerId",
"type": "STRING"
},
{
"name": "FirstName",
"type": "STRING"
},
{
"name": "LastName",
"type": "STRING"
},
{
"name": "Email",
"type": "STRING"
}
]
},
{
"alias": "Employee_nodeType",
"labels": ["Employee"],
"primaryKeyProperties": ["EmployeeId"],
"properties": [
{
"name": "EmployeeId",
"type": "STRING"
},
{
"name": "FirstName",
"type": "STRING"
},
{
"name": "LastName",
"type": "STRING"
},
{
"name": "Role",
"type": "STRING"
},
{
"name": "Email",
"type": "STRING"
}
]
},
{
"alias": "EmployeeCustomer_nodeType",
"labels": ["Customer", "Employee"],
"primaryKeyProperties": ["EmployeeId"],
"properties": [
{
"name": "EmployeeId",
"type": "STRING"
},
{
"name": "FirstName",
"type": "STRING"
},
{
"name": "LastName",
"type": "STRING"
},
{
"name": "Role",
"type": "STRING"
},
{
"name": "Email",
"type": "STRING"
}
]
},
{
"alias": "Product_nodeType",
"labels": ["Product"],
"primaryKeyProperties": ["CategoryId", "ProductId"],
"properties": [
{
"name": "CategoryId",
"type": "INT"
},
{
"name": "ProductId",
"type": "STRING"
},
{
"name": "Name",
"type": "STRING"
},
{
"name": "Price",
"type": "FLOAT"
},
{
"name": "Cost",
"type": "FLOAT"
}
]
}
],
"edgeTypes": [
{
"alias": "CustomerPurchase_edgeType",
"labels": ["PURCHASED"],
"sourceNodeType": {
"alias": "Customer_nodeType"
},
"destinationNodeType": {
"alias": "Product_nodeType"
},
"properties": [
{
"name": "Quantity",
"type": "INT"
},
{
"name": "Date",
"type": "DATETIME"
}
]
},
{
"alias": "EmployeePurchase_edgeType",
"labels": ["PURCHASED"],
"sourceNodeType": {
"alias": "EmployeeCustomer_nodeType"
},
"destinationNodeType": {
"alias": "Product_nodeType"
},
"properties": [
{
"name": "Quantity",
"type": "INT"
},
{
"name": "Date",
"type": "DATETIME"
}
]
},
{
"alias": "Sold_edgeType",
"labels": ["Sold"],
"sourceNodeType": {
"alias": "Employee_nodeType"
},
"destinationNodeType": {
"alias": "Product_nodeType"
},
"properties": [
{
"name": "CustomerId",
"type": "STRING"
},
{
"name": "Date",
"type": "DATETIME"
},
{
"name": "hasDiscount",
"type": "BOOLEAN"
}
]
}
]
}
Exemplo de configuração de estilo
{
"schemaVersion": "1.0.0",
"modelLayout": {
"positions": {
"Customer_nodeType": {
"x": 1,
"y": 1
},
"Employee_nodeType": {
"x": 2,
"y": 3
},
"EmployeeCustomer_nodeType": {
"x": 3,
"y": 4
},
"Product_nodeType": {
"x": 6,
"y": 7
}
},
"styles": {
"Customer_nodeType": {
"size": 30
},
"Employee_nodeType": {
"size": 30
},
"EmployeeCustomer_nodeType": {
"size": 30
},
"Product_nodeType": {
"size": 30
},
"CustomerPurchase_edgeType": {
"size": 30
},
"EmployeePurchase_edgeType": {
"size": 30
},
"Sold_edgeType": {
"size": 30
}
},
"pan": {
"x": 0,
"y": 0
},
"zoomLevel": 1
}
}