Real-Time Intelligence 教程中的数字孪生生成器(预览版)第 3 部分:构建本体

在本教程的这一部分,你将构建一个数字孪生本体,用于为公交车和车站数据建模。 创建数字孪生构建器(预览版)项,并为公共汽车和车站定义实体类型。 然后,将 TutorialLH lakehouse 中的数据映射到实体实例,并定义实体类型之间的关系类型以进一步上下文化数据。

重要

此功能目前为预览版

在 Fabric 中创建新的数字孪生生成器项

注释

回顾教程先决条件,必须在 Fabric 租户上启用数字孪生生成器(预览版)。

  1. 转到你的 Fabric 工作区。

  2. 选择“新建项”。

  3. 搜索 数字孪生生成器(预览版) 项,然后选择它。

    数字孪生生成器项的屏幕截图。

  4. 将项目命名 为 TutorialDTB ,然后选择“ 创建”。

    小窍门

    数字孪生生成器名称可以包括数字、字母和下划线(无空格或短划线)。

  5. 请等待数字孪生生成器项目的创建完成。 数字孪生构建器项目准备就绪后,会打开语义界面。

在语义画布中,可以添加实体类型和关系类型来定义本体。

关于实体类型和关系类型

在数字孪生生成器(预览版)中, 实体类型 是定义域特定本体内概念的类别。 实体类型定义充当该实体类型的单个实体实例的蓝图,并指定在该类别中的所有实例之间共享的常见特征。 下面为示例方案定义两种实体类型:巴士和站。

创建实体类型后,可以将数据映射到该实体中,以便为实体实例注入来自各种源系统的数据。 可以将时序和非时序属性添加到实体类型。 将这两种类型的属性映射到实体类型时,必须先映射至少一个非时序属性,然后才能映射时序属性。 然后,通过将实体类型的非时序属性与时序数据中的列匹配,将非时序和时序数据链接在一起。 时序列中的值必须与映射到实体类型属性的数据 完全 匹配。

定义和映射实体类型后,可以在它们之间创建 关系类型 ,以定义它们彼此的关系方式。 在本教程中,公共汽车 开往 车站。

添加总线实体类型

首先,为总线创建新的实体类型。

  1. 在数字孪生生成器(预览版)的语义画布中,选择 “添加实体”。

    “添加实体”按钮的屏幕截图。

  2. 使 泛型 系统类型保持选中状态,然后输入 “总线 ”以输入实体类型名称。 选择添加实体

  3. 总线实体类型被创建并在画布上变得可见。

    总线实体类型的屏幕截图。

映射非时间总线数据

接下来,将一些非时间序列数据映射到“总线”实体类型。 这些字段是静态属性,用于标识公交车及其停靠特定车站。

  1. “实体配置 ”窗格中,切换到“ 映射 ”选项卡,然后选择“ 添加数据”。

    添加数据映射的屏幕截图。

  2. 打开 Select Lakehouse 表 以选择映射的数据源。 选择教程工作区、 TutorialLH lakehouse 和 bus_data_processed 表。

    总线数据源的屏幕截图。

    (可选)等待数据预览加载。 选择 “选择要确认的数据源 ”。

  3. 对于 属性类型,保留 非时间级属性的默认选择。

  4. “唯一 ID”下,选择编辑图标(形状为铅笔),从源数据中选择一列或多列的唯一 ID。 数字孪生生成器使用此字段唯一标识引入的数据的每一行。

    选择 TripId 作为唯一 ID 列,然后选择“ 确定”。

    公交车唯一 ID 的屏幕截图。

  5. “映射属性”下,选择编辑图标,选择要从源数据映射到总线实体类型的属性。

    通过 “映射属性 ”页,可以从左侧的源数据中选择一列,并将其映射到右侧实体类型的新属性。 默认情况下,从左侧的源数据中选择列名会自动填充右侧的实体类型属性的匹配名称,但如果希望实体类型属性的名称与源数据中调用的名称不同,则可以在右侧输入该属性的新名称。

    页面使用实体类型的 DisplayName 属性加载,该属性未映射到源数据中的任何列。 将 DisplayName 属性保留原样,然后选择 “添加实体属性 ”以向映射添加新属性。

    未映射的显示名称和添加实体类型属性的屏幕截图。

    映射以下实体类型属性:

    • 从左侧列中的下拉菜单中选择 TripId ,并在右侧列中编辑该框以读取 TripId_static。 此作在名为 TripId_static 的总线实体类型上创建一个属性,该类型从源数据中的 TripId 属性获取其值。
    • 从左侧列的下拉菜单中选择 StopCode ,并在右侧列中编辑该框以读取 StopCode_static。 此作在名为 StopCode_static 的总线实体类型上创建一个属性,该类型从源数据中的 StopCode 属性获取其值。

    选中该框以确认无法重命名或删除属性,然后选择“ 应用”。

    映射的非超时总线属性的屏幕截图。

  6. 保存 映射。

    保存总线非时序映射的屏幕截图。

  7. 切换到“ 计划 ”选项卡,然后选择“ 运行 ”以应用映射。

    运行总线映射的屏幕截图。

    页面确认流已排队。

  8. 在“ 管理作 ”选项卡中检查映射作业的状态。等待状态显示 “已完成 ”,然后再继续下一部分(作可能需要几分钟才能从队列开始运行,并在启动后再等待几分钟才能完成),因此可能需要多次刷新内容。

    总线实体类型的“管理操作”按钮的屏幕截图。

    包含总线实体类型映射的“管理作”选项卡的屏幕截图。

映射时序总线数据

接下来,将一些时序数据映射到总线实体类型。 这些属性从 Eventstream 示例数据流式传输到数据源,并包含有关公交车位置和移动的信息。

  1. 选择主页以返回语义画布,然后再次选择Bus实体类型。 在 “实体配置 ”窗格中,重新打开 “映射 ”选项卡。选择 “添加数据 ”以添加新映射。

    添加新总线映射的屏幕截图。

  2. 打开 Select Lakehouse 表 以选择映射的数据源。 再次选择教程工作区、 TutorialLH lakehouse 和 bus_data_processed 表。 选择 “选择数据源”。

  3. 这一次,将 属性类型 切换到 Timeseries 属性

  4. “映射属性”下,选择编辑图标。

    页面使用 实体类型的 Timestamp 属性加载,该属性未映射到源数据中的任何列。 时间戳 需要映射,因此请从左侧的相应下拉菜单中选择 ActualTime 。 然后选择 “添加实体属性 ”以向映射添加新属性。

    映射以下属性。 从左侧的源列中选择这些属性名称时,请保留右侧填充的默认匹配名称。

    • ScheduleTime
    • BusLine
    • StationNumber
    • StopCode
    • BusState
    • TimeToNextStation
    • TripId

    映射时序总线属性的屏幕截图。

  5. 选中该框以确认无法重命名或删除属性,然后选择“ 应用”。

  6. 接下来,将时序数据链接到此实体类型。 此过程要求从时序数据表中选择实体类型属性和匹配列。 从时序数据中选择的列必须与映射到实体类型上所选属性的数据 完全 匹配。 此过程可确保正确语境化您的实体实例和时序数据。

    “链接与实体属性”下,选择“编辑”图标。

    对于 “选择实体属性”, 请从下拉菜单中选择 TripId_Static 。 对于 从时间系列数据中选择列...,请选择 TripId。 选择应用

  7. 确保已启用 增量映射保存 映射。 在提示时确认。

    保存总线时序映射的屏幕截图。

  8. 切换到 “计划 ”选项卡,然后选择“在新时序映射下 运行 ”以应用它。

添加 Stop 实体类型

接下来,创建第二种实体类型来表示公交车站。

  1. 在语义画布中,选择“ 添加实体”。

  2. 使 泛型 系统类型保持选中状态,然后输入 “停止 ”以获取实体类型名称。 选择添加实体

  3. 几分钟后, “停止 ”实体类型现在在画布上可见。

    “Stop”实体类型的屏幕截图。

非时间序列的站点数据

下一步,将一些非时间序列数据映射到“Stop”实体类型。 停止数据不包含任何时序数据,仅包含有关公交站及其位置的静态数据。 稍后,将 Stop 和 巴士 实体类型链接在一起时,此数据用于使用维度数据丰富公交事实数据。

  1. “实体配置 ”窗格中,打开“ 映射 ”选项卡,然后选择“ 添加数据”。

  2. 打开 Select Lakehouse 表 以选择映射的数据源。 选择教程工作区、 TutorialLH lakehouse 和 stops_data 表。

    选择 “选择数据源”。

  3. 对于 属性类型,保留 非时间级属性的默认选择。

  4. 对于 唯一 ID,请选择 Stop_Code

  5. 对于 映射属性,请将 源数据中的Stop_Name 映射到右侧的 DisplayName 属性。

    然后,使用 “添加实体属性 ”按钮将以下新属性添加到映射。 从左侧的源列中选择这些属性名称时,请保留右侧填充的默认匹配名称。

    • 停止代码
    • Road_Name
    • Borough_ID
    • Suggested_Locality
    • Locality_ID
    • 纬度
    • 经度

    选中该框以确认无法重命名或删除属性,然后选择“ 应用”。

    映射的非时间序列终点属性的屏幕截图。

  6. 保存 映射。

    保存停止映射的屏幕截图。

  7. 切换到“ 计划 ”选项卡,然后选择“ 运行 ”以应用映射。

定义关系类型

接下来,创建一个关系类型来表示公共汽车到达一个站点。

  1. 在语义画布中,突出显示总线实体类型并选择添加关系

    添加关系类型的屏幕截图。

  2. “关系配置 ”窗格中,输入以下信息:

    • 第一个实体:总线
      • 要联接的属性:StopCode_static
    • 第二个实体:停止
      • 要联接的属性:Stop_Code
    • 关系名称:输入 goesTo
    • 选择关系类型:多个站点对一个总线 (1:N)

    选择 创建

    关系类型配置的屏幕截图。

  3. 在显示的“ 计划 ”部分中,选择“ 运行 ”以应用关系类型。

现在,您的公交和站点实体类型在画布中可见,并且它们之间存在关系。 这些元素共同构成了教程方案的本体。

本体学的屏幕截图。

验证映射完成

最后一步是确认所有数据映射已成功运行。 每个映射可能需要几分钟才能完成。

  1. 在菜单功能区中,选择 管理操作

    选择“管理操作”的屏幕截图。

  2. 查看映射操作的详细信息,并确认它们都已成功完成。

    四个已完成操作的屏幕截图。

  3. 如果任何作失败,请选中其名称旁边的框,然后选择“ 运行 ”以重新运行它。

小窍门

有关失败的映射操作的进一步故障排除,请参阅数字孪生生成器故障排除(预览版)。

等待所有映射完成,再进入本教程的下一部分。 在下一部分中,您将映射的本体投射到事件中心,以支持进一步的数据分析和可视化。

后续步骤