适用于:✅Azure 数据资源管理器
注释
此功能目前处于公开预览状态。 正式发布之前,功能和语法可能会更改。
创建新的图形模型,或使用提供的模型定义有效负载更改现有模型。
权限
若要运行此命令,用户需要 数据库用户权限。
语法
.create-or-alter
graph_model
GraphModelNameGraphModelDefinitionPayload
参数
名称 | 类型 | 必选 | DESCRIPTION |
---|---|---|---|
GraphModelName | 字符串 | ✅ | 要创建或更改的图形模型的名称。 该名称在数据库中必须是唯一的,并遵循 实体命名规则。 |
GraphModelDefinitionPayload | 字符串 | ✅ | 定义图形模型的有效 JSON 文档。 请参阅 图形模型定义有效负载。 |
图形模型定义有效负载
图形模型定义有效负载是一个 JSON 文档,用于定义图形模型的结构和处理步骤。 有关图形模型定义格式的详细信息,请参阅 图形模型概述。
退货
此命令返回具有以下列的表:
列 | 类型 | DESCRIPTION |
---|---|---|
名称 | 字符串 | 创建或更改的图形模型的名称。 |
CreationTime | DateTime | 创建或更改图形模型时的时间戳。 |
Id | 字符串 | 图形模型的唯一标识符。 |
SnapshotsCount | int (整数) | 从此图形模型创建的快照数。 |
型号 | 字符串 (JSON) | 图形模型的 JSON 定义,包括架构和处理步骤。 |
AuthorizedPrincipals | 字符串 (JSON) | 有权访问图形模型的主体数组,包括其标识符和角色分配。 |
RetentionPolicy (保留策略) | 字符串 (JSON) | 为图形模型配置的保留策略。 |
例子
创建新的图形模型
.create-or-alter graph_model SocialNetwork ```
{
"Schema": {
"Nodes": {
"User": {
"UserId": "string",
"Username": "string",
"JoinDate": "datetime",
"IsActive": "bool"
}
},
"Edges": {
"Follows": {
"Since": "datetime"
},
"Likes": {
"Timestamp": "datetime",
"Rating": "int"
}
}
},
"Definition": {
"Steps": [
{
"Kind": "AddNodes",
"Query": "Users | project UserId, Username, JoinDate, IsActive",
"NodeIdColumn": "UserId",
"Labels": ["User"]
},
{
"Kind": "AddEdges",
"Query": "FollowEvents | project SourceUser, TargetUser, CreatedAt",
"SourceColumn": "SourceUser",
"TargetColumn": "TargetUser",
"Labels": ["Follows"]
},
{
"Kind": "AddEdges",
"Query": "LikeEvents | project UserId, ContentId, Timestamp, Score",
"SourceColumn": "UserId",
"TargetColumn": "ContentId",
"Labels": ["Likes"]
}
]
}
}
```
输出
名称 | 创建时间 | 身份证件 | SnapshotsCount | 型号 | AuthorizedPrincipals | RetentionPolicy |
---|---|---|---|---|---|---|
SocialNetwork | 2025-05-23 14:42:37.5128901 | aaaaaaaa-0b0b-1c1c-2d2d-33333333333 | 0 | 上面提供的模型 | [ { “Type”: “Microsoft Entra ID User”, “DisplayName”: “Alex Johnson (upn: alex.johnson@contoso.com)”, “ObjectId”: “aaaaaaaa-bbbb-cccc-1111-222222222222”, “FQN”: “aaduser=aaaaaaaa-bbbb-cccc-1111-222222222222;aaaabbbb-0000-cccc-1111-dd222eeee“, ”Notes“: ”, “RoleAssignmentIdentifier”: “a0a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1e1” } ] |
{ “SoftDeletePeriod”: “3650.00:00:00” } |
注释
- 如果具有指定名称的图形模型不存在,则使用
.create-or-alter graph_model
时会创建一个新模型。 如果已存在,则会使用新定义对其进行更新。 - 每次更改图形模型时,都会创建一个新版本,以便跟踪一段时间内的更改,并在需要时还原到以前的版本。
- 若要从模型生成图形快照,请使用
.make graph_snapshot
命令。