Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article fournit une répartition de la structure de définition pour les éléments de modèle Graph.
Parties de définition
Ce tableau répertorie les parties de définition de modèle de graphique.
| Chemin d’accès du composant Définition | type | Obligatoire | Descriptif |
|---|---|---|---|
dataSources |
DataSource [] | true | Tableau de sources de données |
graphDefinition |
GraphDefinition | true | Définition du graphique de mappage de données |
graphType |
GraphType | true | Structure de graphe |
stylingConfiguration |
StylingConfiguration | true | Configuration du style de graphe |
Source de données
Décrit la structure de la source de données.
| Nom | Type | Descriptif |
|---|---|---|
| nom | Chaîne | Nom de la source de données |
| type | « DeltaTable » | Type de source de données |
| Propriétés | DataSourceProperties | Propriétés de la source de données |
DataSourceProperties
Propriétés requises par le type de source de données. Pour les sources DeltaTable, cela inclut le chemin d’accès de la table.
| Nom | Type | Descriptif |
|---|---|---|
| path | Chaîne | Chemin d’accès à la source de données |
GraphDefinition
Décrit la définition du graphique de mappage de données.
| Nom | Type | Descriptif |
|---|---|---|
| nodeTables | NodeTable[] | Tableau de définitions de mappage de données de nœud |
| edgeTables | EdgeTable[] | Tableau de définitions de mappage de données de périphérie |
NodeTable
Décrit la structure de la définition de mappage de données de nœud.
| Nom | Type | Descriptif |
|---|---|---|
| pièce d'identité | Chaîne | ID de la définition de mappage des données du nœud |
| nodeTypeAlias | Chaîne | Alias du nœud tel qu’il est défini dans le graphique |
| dataSourceName | Chaîne | Nom de la source de données |
| propertyMappings | PropertyMapping[] | Tableau de définitions de mappage de données de propriété |
EdgeTable
Décrit la structure de la définition de mappage de données de périphérie.
| Nom | Type | Descriptif |
|---|---|---|
| pièce d'identité | Chaîne | ID de la définition de mappage de données de périphérie |
| edgeTypeAlias | Chaîne | Alias du bord tel qu’il est défini dans le graphique |
| dataSourceName | Chaîne | Nom de la source de données |
| sourceNodeKeyColumns | Chaîne[] | Tableau de colonnes qui correspondent au nœud source |
| targetNodeKeyColumns | Chaîne[] | Tableau de colonnes qui correspondent au nœud cible |
| propertyMappings | PropertyMapping[] | Tableau de définitions de mappage de données de propriété |
PropertyMapping
Décrit la structure de la définition de mappage de données de propriété.
| Nom | Type | Descriptif |
|---|---|---|
| propertyName | Chaîne | Nom de la propriété |
| sourceColumn | Chaîne | Nom de la colonne source |
| Filter | SingleFilter / GroupFilter | Définition du filtre |
SingleFilter
Décrit la structure d’un seul filtre.
| Nom | Type | Descriptif |
|---|---|---|
| opérateur | Chaîne | Nom de l’opérateur du filtre |
| columnName | Chaîne | Nom de colonne de ce filtre |
| value | Objet | Valeur de comparaison. Prend en charge les chaînes, nombre, dateTime et tableaux de ces valeurs. |
GroupFilter
Décrit la structure d’un filtre de groupe.
| Nom | Type | Descriptif |
|---|---|---|
| opérateur | Chaîne | Nom de l’opérateur du filtre |
| filters | SingleFilter[] / GroupFilter[] | Filtres de ce filtre de groupe |
| and | SingleFilter[] / GroupFilter[] | Filtres pour and logique |
| ou | SingleFilter[] / GroupFilter[] | Filtres pour or logique |
GraphType
Décrit la structure d’un graphique.
| Nom | Type | Descriptif |
|---|---|---|
| nodeTypes | NodeType[] | Tableau de structures de nœud |
| edgeTypes | EdgeType[] | Tableau de structures de bord |
NodeType
Décrit la structure d’un nœud.
| Nom | Type | Descriptif |
|---|---|---|
| alias | Chaîne | Alias |
| labels | Chaîne[] | Tableau d’étiquettes |
| primaryKeyProperties | Chaîne[] | Tableau des propriétés de clé primaire |
| Propriétés | Propriété[] | Tableau de propriétés |
EdgeType
Décrit la structure d’un bord.
| Nom | Type | Descriptif |
|---|---|---|
| alias | Chaîne | Alias |
| labels | Chaîne[] | Tableau d’étiquettes |
| sourceNodeType | NodeTypeReference | Structure du nœud source |
| destinationNodeType | NodeTypeReference | Structure du nœud de destination |
| Propriétés | Propriété[] | Tableau de propriétés |
Propriété
Décrit la structure d’une propriété.
| Nom | Type | Descriptif |
|---|---|---|
| nom | Chaîne | Nom de la propriété |
| type | Chaîne | Type de la propriété |
NodeTypeReference
Décrit la structure d’un NodeTypeReference.
| Nom | Type | Descriptif |
|---|---|---|
| alias | Chaîne | Alias du nœud référencé |
StylingConfiguration
Décrit la structure de la configuration de style.
| Nom | Type | Descriptif |
|---|---|---|
| modelLayout | ModelLayout | Configuration de style et de disposition pour le modèle de graphe |
ModelLayout
Décrit la configuration des styles de modèle.
| Nom | Type | Descriptif |
|---|---|---|
| Positions | Chaîne de<dictionnaire, Position> | Positions des nœuds |
| Styles | Chaîne de<dictionnaire, ModelStyle> | Styles du modèle de graphe |
| Pan | Position | Panoramique du canevas du modèle |
| zoomLevel | Nombre entier | Niveau de zoom du canevas du modèle |
Poste
Décrit une position 2D.
| Nom | Type | Descriptif |
|---|---|---|
| x | Nombre entier | Valeur de coordonnée x |
| y | Nombre entier | Valeur de coordonnée y |
ModelStyle
Décrit le style d’un élément de modèle.
| Nom | Type | Descriptif |
|---|---|---|
| size | Nombre entier | Taille d’un élément de modèle |
Exemple de sources de données
{
"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"
}
}
]
}
Exemple de définition de graphique
{
"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"
}
]
}
]
}
Exemple de type graph
{
"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"
}
]
}
]
}
Exemple de configuration de style
{
"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
}
}