更新时间:2024-10-21 GMT+08:00
分享

创建技术架构

概述

用户可以通过信息架构创建关系型数据库、非关系型数据库、开放API等底层技术架构,用于技术模型的采集工作。

前提条件

已梳理明晰技术架构。

创建技术架构

  1. 在开天集成工作台界面中,选择左侧导航栏中的“应用模型 > 实例管理”。
  2. 单击实例“控制台”,弹出“模型地图和模型目录上新啦”对话框,单击“体验新版”,选择“信息架构”(旧版本已不支持创建架构)。

    如果没有对话框出现,选择“信息架构”,右上角单击“体验新版”,切换至新版信息架构页面。

  3. 选择“架构”页签,单击“创建架构”。
  4. 在弹出的“基本信息”对话框中,填写架构设计基本信息,具体配置如表1所示。填写完成后,单击“确定”,完成技术架构的创建。

    表1 基本信息说明

    参数

    参数说明

    架构类型

    选择技术架构。

    架构名称

    架构名称,用户自定义。

    架构编码

    架构编码,用户自定义,例如:AAA_BB_MODEL。

    GraphQL名称

    指定GraphQL API中使用的名称。非必填,若不指定,GraphQL API中不能使用此架构。

    • 名称只能包含字母及数字,大驼峰式风格,默认基于编码生成。
    • 租户内名称需唯一。
    • 名称不能以Abm为前缀,系统类型将使用Abm作为前缀。

    描述

    填写对该架构的描述内容。

  5. 基础信息配置完成后,可根据业务场景添加节点,长按需要添加的节点图标,拖拽到画布中,在弹出的创建对话框中,根据业务场景填写节点的配置信息,节点的配置信息如表2所示。

    表2 节点的配置信息

    参数

    参数说明

    节点

    节点分为实体与特征两类,具体类型如下所示:

    • 实体是对物理世界中关键元素的数字化表述,同时也是元模型中的关键要素。
      • Actor实体的定义,其包含SubType属性,SubType属性值包括数据管家、数据分析师。
      • BusinessDataObject实体的定义,其包含SubType属性,SubType属性值包括业务对象。
    • 特征是用来描述实体的某一类关键属性,其可以在多个实体间被共享。特征包含了一个DID属性,可以和多个实体建立特征联接,用于表明这个实体可以被分配数字身份。

    当前系统中支持的实体以及特征如下所示:

    • :基础实体,用于定义和描述对接的应用数据平台的资产。
    • :基础特征,用于描述被管理的资产实体的基础特征,新数据会覆盖旧数据。
    • :版本特征,用于描述被管理的资产实体的版本特征,通过版本号存储。

    类型

    节点的类型。

    • 在创建实体时,类型无需选择。
    • 在创建特征时,选择类型为基础特征或版本特征,请根据需要选择。

    名称

    节点的名称,用户自定义。只能包含英文字母、数字、下划线、中文及空格,并且只能以中文和英文开头。当类型选择为实体时,界面回显为“实体名称”。当类型选择为特征时,界面回显为“特征名称”。

    当配置实体名称时,支持配置实体颜色,单击颜色选择框,选择实体颜色。

    图1 配置实体颜色

    编码

    节点的编码,用户自定义。只能包含英文字母、数字和下划线,且必须以英文字母开头。当类型选择为实体时,界面回显为“实体编码”。当类型选择为特征时,界面回显为“特征编码”。

    简称

    节点的简称,建议按照一定的规则填写简称,方便用户快速识别。

    描述

    填写对此类的描述。

    实体名称规则

    为实体名称添加校验规则,校验规则从下拉框规则列表中进行选择。

    系统支持自定义配置规则,在下拉框中单击“添加规则”,参考表3配置规则信息,然后单击“确定”。

    配置的校验规则用于在模型目录中添加实体时进行实体名称校验。

    名称唯一性规则

    在新增实体时支持选择实体内唯一,用于在模型目录中添加实体时进行实体名称唯一性校验。

    在新增的实体配置分解关系后,编辑实体时,同时支持选择层级内唯一,用于在模型目录中添加实体时对同一层级内的实体名称进行唯一性校验。

    实体子类型

    支持配置实体子类型,单击“新增”,配置子类名称以及子类编码。

    添加的实体子类型在模型目录中新增实体时或在模型地图中检索模型时可以使用。

    支持编辑

    根据业务场景,选择此节点的属性是否允许编辑。

    选择“是”,则此实体支持通过页面或接口维护此实体,选择“否”,则此实体不支持通过页面或接口维护,仅允许通过后端采集任务自动采集。

    GraphQL名称

    实体/特征在GraphQL API中使用的名称。非必填,若不指定,GraphQL API中不能使用此实体/特征。

    • 只能包含字母及数字,大驼峰式风格,默认基于编码生成。
    • 架构内实体及特征的名称需要唯一。
    • 名称不能以Abm为前缀,系统类型将使用Abm作为前缀名称。
    表3 创建规则

    参数

    说明

    规则名称

    规则的名称,用户自定义。

    规则类型

    • 当类型为枚举值时,需添加枚举值,用于在模型目录中添加实体时实体名称在枚举值中选择。
    • 当类型为布尔值时,按照布尔的取值YES或NO作为实体名称。
    • 当类型为数值时,最大值与最小值的配置为可选项,用户可根据需求配置校验。

    规则描述

    对规则的描述说明。

  6. 节点信息配置完成后,可以对节点进行属性的添加,属性的配置信息如表4所示。

    实体属性是用来描述实体的一般属性,其由实体所独有。图2展示了Actor和BusinessDataObject定义的实体属性SubType,由于其被实体所独有,因此其值是可以不相同的。

    图2 实体属性
    • 实体属性:可选,根据需求进行配置即可。
    • 特征属性:至少配置一条。
    表4 属性的配置信息

    参数

    说明

    属性名称

    属性的名称,用户自定义。只能包含英文字母、数字、下划线、中文及空格,并且只能以中文和英文开头。

    属性编码

    属性的编码,用户自定义。只能包含英文字母、数字、下划线、中文及空格,并且只能以中文和英文开头。

    GraphQL名称

    GraphQL API中,属性在所属实体或特征下以字段形式定义,用于指定此字段的名称。非必填,若不指定,GraphQL API中不能使用此属性。

    • 只能包含字母及数字,小驼峰式风格,默认基于编码生成。
    • 实体或特征内的字段名称(包含属性、关系)需要唯一。
    • 名称不能以abm为前缀,系统类型将使用abm作为前缀名称。

    描述

    填写对此属性的描述。

    规则

    为属性添加校验规则,校验规则从下拉框规则列表中进行选择。

    系统支持自定义配置规则,在下拉框中单击“添加规则”,配置规则信息,具体参数如表5所示,然后单击“确定”。

    配置的校验规则用于在模型目录中添加属性时进行实体属性校验。

    必填

    勾选后,在模型目录手动创建实体元模型时,该属性为必填项。

    搜索

    勾选后,在模型地图可以检索到该属性。

    操作

    :删除属性。

    :下移属性。

    :上移属性。

    表5 创建规则

    参数

    说明

    规则名称

    规则的名称,用户自定义。

    规则类型

    • 当类型为枚举值时,需添加枚举值,用于在模型目录中添加实体时实体属性/特征属性在枚举值中选择。
    • 当类型为布尔值时,按照布尔的取值YES或NO作为实体属性/特征属性。
    • 当类型为数值时,最大值与最小值的配置为可选项,用户可根据需求配置校验。

    规则描述

    对规则的描述说明。

  7. 单击“确定”,完成技术架构节点的添加。
  8. 节点创建完成后,可根据业务场景添加节点间的联接,联接的配置信息如表6所示。

    • 添加联接:
      • 单击联接图标,在弹出的创建对话框中,填写联接的配置信息。
      • 右键单击画布中源类节点,选择“新建实体联接”或“新建特征联接”,在弹出的创建对话框中,填写联接的配置信息。
    表6 联接的配置信息

    参数

    参数说明

    源实体

    类间联接的起点类,不可编辑,默认为选择的源类节点。

    关系类型

    关系表示实体与实体、实体与特征之间的关联性。实体之间的关系可以自定义,如Organization和Actor之间的关系是Owns(反过来的关系是IsOwnedBy),关系是可以双向被访问的。实体与实体特征之间的关系默认为组合关系(Composition)。

    关系的类型,可默认选择的部分关系类型如下:

    • 被使用:被使用关系,即两个类(起点类和终点类)中一个类的变更会影响到另一个类的关系。
    • 组合:组合关系,体现整体与部分间的关系,但此时整体与部分是不可分的,整体的生命周期结束也就意味着部分的生命周期结束。如人和人的大脑。
    • 部分属于:部分属于关系,体现的是整体与部分的关系,此时整体与部分之间是可分离的,它们可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享。比如计算机与CPU、公司与员工的关系等。
    • 被管理:被管理关系,即表示事物的归属问题。
    • 继承:继承关系,是指一个类的定义可以基于另外一个已经存在的类,即子类基于父类,从而实现父类代码的重用,子类能吸收已有类的属性和行为,并能拓展新的能力。
    • 一对一:一对一关系,例如一个老师辅导一个学生,一个学生只请教一个老师,则学生和老师是一对一关系。
    • 一对多:一对多关系,例如一个老师可以教多个学生,多个学生只有一个老师来教,则站在老师方就是一对多关系。
    • 多对一:多对一关系,例如一个老师可以教多个学生,多个学生只有一个老师来教,则站在学生方,就是多对一关系。
    • 多对多:多对多关系,例如园区划线的车位和园区的每一辆车,任意一个车位可以停任意一辆车,任意一辆车可以停在任意一个车位上,则车和车位是多对多关系。
    • 分解:将实体按照层级关系进行展示。当选择为分解关系时,关系层次默认展示为一对多,且目标实体必须选择为源实体。

    支持用户根据需求自定义新增关系类型,单击“新增关系类型”,配置关系类型基本信息,如图3,单击“确定”。

    图3 新增关系类型

    关系层次

    类间关系所属的层次,可选择的关系层次如下:

    • 一对一:起点类与终点类间的数据一一对应。例如一个老师辅导一个学生,一个学生只请教一个老师,则学生和老师是一对一关系。
    • 一对多:起点类的一个数据对应终点类的多个数据。例如一个老师可以教多个学生,多个学生只有一个老师来教,则站在老师方就是一对多关系。
    • 多对一:起点类的多个数据对应终点类的一个数据。例如一个老师可以教多个学生,多个学生只有一个老师来教,则站在学生方,就是多对一关系。
    • 多对多:起点类的多个数据对应终点类的多个数据。例如园区划线的车位和园区的每一辆车,任意一个车位可以停任意一辆车,任意一辆车可以停在任意一个车位上,则车和车位是多对多关系。

    依赖架构编码

    选择依赖架构编码,即可选择依赖架构的节点作为目标类。

    说明:
    • 如果选择当前架构的编码,则可选择当前架构的节点作为目标类。
    • 如果选择其他架构的编码,则可以跨包选择其他架构的节点作为目标类。
    • 在创建实体联接时,且关系类型选择为分解,则依赖架构编码选择当前架构的编码。

    目标实体/特征

    类间关系的终点类,在编辑关系的状态下不可编辑,为创建关系时选择的目标类。

    说明:

    当在创建特征联接时,依赖架构编码选择通用模型(系统默认预置通用模型架构)时,目标特征选择层次级别,用于在模型目录中创建实体时,展示各实体间的层级。

    实体/特征联接名称

    联接的名称,支持用户自定义。只能包含英文字母、数字、下划线、中文及空格,并且只能以中文和英文开头。

    实体/特征联接简称

    联接的简称,支持用户自定义,建议按照一定的规则填写简称,方便用户快速识别。

    血缘标识

    当为实体联接时,支持血缘标识的选择,根据业务场景,选择此联接是否是血缘关系。

    关系类型是“为其上游”时,只能选择“是”。

    描述

    填写对此联接的描述。

    添加约束

    (可选项)支持配置约束条件,用于在模型目录中为元模型添加实体关系或使用Excel导入实体时进行关系校验。

    • 创建实体联接支持选择源端约束和目标端约束

      单击“添加约束”,选择源端约束和目标端约束即可。

      说明:
      • 当源实体或者目标实体中的一个有涉及分解关系时,源端约束下拉框选项为源实体的子类型,目标端约束为目标实体的子类型,有涉及分解关系的实体下拉框选项会展示系统默认配置的“实体为根节点”。
      • 当源实体或者目标实体的关系类型不涉及分解关系时,源端约束下拉框选项为源实体的子类型,目标端约束为目标实体的子类型。
    • 创建特征联接支持选择源端约束
      单击“添加约束”,选择源端约束即可。
      说明:
      • 当源实体有涉及分解关系时,源端约束下拉框选项为源实体的子类型和系统默认配置的“实体为根节点”。
      • 当源实体的关系类型不涉及分解关系时,源端约束下拉框选项为源实体的子类型。

    支持编辑

    根据业务场景,选择此联接是否允许编辑。

    从起点查询终点GraphQL名称

    GraphQL API中,关系在源实体下以字段形式定义,关联到目标实体,用于指定此字段的名称。 非必填,如果不指定,GraphQL API中源实体下不能使用此关系。

    • 只能包含字母及数字,小驼峰式风格,默认基于编码生成。
    • 实体或特征内的字段名称(包含属性、关系)需要唯一。
    • 名称不能以abm为前缀,系统类型将使用abm作为前缀名称。

    从终点查询起点GraphQL名称

    GraphQL API中,关系在目标实体下以字段形式定义,关联到源实体,用于指定此字段的名称。 非必填,如果不指定,GraphQL API中目标实体下不能使用此关系。

    • 只能包含字母及数字,小驼峰式风格,默认基于编码生成。
    • 实体或特征内的字段名称(包含属性、关系)需要唯一。
    • 名称不能以abm为前缀,系统类型将使用abm作为前缀名称。
    1. 只有基础实体节点与基础实体节点或特征节点之间可以添加联接,特征节点之间不能添加联接。
    2. 添加的联接支持增加锚点来进行拖动。

  9. 单击“确定”,完成技术架构的联接添加。

    实体联接表示实体和实体组合的联接。

    特征联接表示实体和特征组合的联接。

  10. 在架构设计的画布页面,会显示该技术架构的节点之间的全量联接图。单击节点或联接连线,相关节点与联接连线会高亮显示。

管理索引

支持属性、特征、关系的搜索项配置以及过滤项配置,并支持对已配置的索引进行编辑、删除操作。

处于“未发布”状态的架构,在架构列表操作列单击“编辑”,配置索引。具体操作说明见表7

表7 索引配置说明

操作

说明

添加搜索项/过滤项

包含添加属性/特征/关系的搜索项以及过滤项。

在架构设计的左侧菜单栏,选择索引下的属性/特征/关系索引,在搜索项/过滤项右侧单击,在弹框中配置搜索项/过滤项信息,单击“确定”,搜索项/过滤项配置完成。

具体参数说明如下:

  • 名称:搜索项/过滤项名称,用户自定义,名称包含英文字母、数字、下划线、中文以及空格,并且只能以中文和英文开头。
  • 编码:搜索项/过滤项编码,用户自定义。
  • 描述:对搜索项/过滤项的描述说明。
  • 是否启用:当启用时,配置项生效。

设置属性/特征/关系搜索项

在架构设计的左侧菜单栏,选择索引下的属性/特征/关系索引,单击已经创建好的属性/特征/关系搜索项名称,设置搜索项的基础信息以及属性/特征/关系路径。

具体参数说明如下:

  • 搜索项:选择已添加的搜索项。
    • 属性配置项在Elasticsearch会映射为一个逻辑字段,帮助用户按照实体属性的值进行关键词匹配从而搜索到实体。
    • 特征配置项在Elasticsearch会映射为一个逻辑字段,此字段帮助用户按照特征属性的值进行关键词匹配从而搜索到与该特征关联的实体。
    • 关系配置项在Elasticsearch会映射为一个逻辑字段,此字段帮助用户按照关系路径的属性值进行关键词匹配从而搜索到与该关系路径属性关联的实体。
  • 属性/特征/关系路径:由搜索的实体开始,并以要作为搜索项的属性结束,单击,选择属性/特征/关系路径。
    说明:

    设置关系路径时仅支持选择关系层次为一对一、一对多或多对一的关系,且最多支持选择5层关系。

设置属性/特征/关系过滤项

在架构设计的左侧菜单栏,选择索引下的属性/特征/关系索引,单击已经创建好的属性/特征/关系过滤项名称,设置过滤项的基础信息以及属性/特征/关系路径。

具体参数说明如下:

  • 过滤项:选择已添加的过滤项。
    • 属性配置项在Elasticsearch会映射为一个逻辑字段,此字段帮助用户按照实体属性的值进行聚合以从搜索结果中过滤相关实体。
    • 特征配置项在Elasticsearch会映射为一个逻辑字段,此字段帮助用户按照特征属性的值进行聚合以从搜索结果中过滤与此特征关联的实体。
    • 关系配置项在Elasticsearch会映射为一个逻辑字段,此字段帮助用户按照关系路径的属性值进行聚合以从搜索结果中过滤与此关系路径属性关联的实体。
  • 属性/特征/关系路径:由过滤的实体开始,并以要作为过滤项的属性结束,单击,选择属性/特征/关系路径。
    说明:

    设置关系路径时仅支持选择关系层次为一对一、一对多或多对一的关系,且最多支持选择5层关系。

修改搜索项/过滤项

包含修改属性/特征/关系的搜索项以及过滤项。

在架构设计的左侧菜单栏,选择索引下的属性/特征/关系索引,在搜索项/过滤项名称右侧单击,在弹框中修改搜索项/过滤项信息,单击“确定”,搜索项/过滤项修改完成。

删除搜索项/过滤项

包含删除属性/特征/关系的搜索项以及过滤项。

在架构设计的左侧菜单栏,选择索引下的属性/特征/关系索引,在搜索项/过滤项名称右侧单击,在弹框中单击“确定”,搜索项/过滤项删除。

  1. 在配置属性/关系路径时支持选择实体不选择属性,用于搜索项在不配置属性的时候使用默认的实例名称进行搜索。
  2. 在配置特征路径时,选择特征后默认自动勾选所有相关实体,用户可根据需求进行修改。
  3. 索引配置项在进行新增、修改、删除路径等操作时,界面会提示,如需索引项生效,请重建索引,重建索引请参考重建索引

更多操作

技术架构创建完成后,处于“未发布”状态,您可以执行如表8的操作。

表8 相关操作

操作

说明

编辑节点/联接

编辑节点/联接仅支持在创建信息架构时,或在信息架构列表中,单击“操作”列的“编辑”,进入架构设计的界面中操作。

  • 在架构设计的画布界面中,右键单击需要编辑的节点/联接,选择“编辑节点/联接”(外部实体/特征不支持编辑),修改节点/联接配置信息。
  • 在架构设计的左侧菜单栏,单击节点(实体/特征)下的按钮(外部实体/特征不支持编辑),修改节点配置信息。
说明:

编辑联接时,高级选项中支持设置删除实体动作,删除实体动作下拉框选项系统根据配置的联接关系展示,请根据需要选择。

  • 删除源实体时级联删除目标实体:删除源实体时目标实体同步删除。
  • 删除源实体时不级联删除目标实体:删除源实体时,目标实体没有被同步删除。
  • 删除目标实体时级联删除源实体:删除目标实体时源实体同步删除。
  • 删除目标实体时不级联删除源实体:删除目标实体时,源实体没有被同步删除。

删除节点/联接

删除节点/联接仅支持在创建信息架构时,或在信息架构列表中,单击“操作”列的“编辑”,进入架构设计的界面中操作。

  • 在架构设计的画布界面中,右键单击需要删除的节点/联接,选择“删除节点/联接”,单击“确认”,删除成功。
  • 选中需要删除的节点/联接,单击键盘Delete键,单击“确认”,删除成功。
  • 在架构设计的左侧菜单栏,单击节点(实体/特征)下的按钮,单击“确认”,删除成功。
说明:

在删除节点时,与删除的节点相关的联接也会被一并删除。

展示特征

在架构设计的画布界面中,单击“展示特征”,即可看到隐藏的特征,默认为不展示特征。

隐藏特征

在架构设计的画布界面中,单击“隐藏特征”,即可隐藏架构中的特征,默认为不展示特征。

发布技术架构

在信息架构列表中,单击“操作”列的“发布”,可发布处于“未发布”状态的技术架构。

说明:

在发布技术架构之前,您需要完成对应技术适配器的创建,具体操作请参见创建技术适配器

编辑技术架构

在信息架构列表中,单击“操作”列的“编辑”,可对技术架构的基本信息和架构设计进行编辑。

查看技术架构详情

在信息架构列表中,单击架构名称,查看技术架构的详情以及架构联接图。

在技术架构详情页面的架构画布中,右键单击实体名称,查看实体的GraphQL名称详情和实体的Schema详情。

图4 查看GraphQL名称和查看Schema

删除技术架构

在信息架构列表中,单击“操作”列的“删除”,可对技术架构进行删除。

说明:

只有处于“未发布”状态的信息架构可以被删除。如果需要删除的技术架构为“已发布”状态,则需要撤销发布。

撤销发布技术架构

在信息架构列表中,单击“操作”列的“撤销发布”,可对“已发布”状态的技术架构进行撤销发布操作。

下载导入模板

  • 在信息架构列表中,单击架构名称,进入架构详情页面,在架构设计的画布界面中,右键单击实体名称,然后再次单击“下载导入模板”即可。
  • 在信息架构列表中,单击“操作”列的“下载导入模板”。在弹框中选择实体名称,单击“确定”,导入模板下载完成。

将下载的导入模板根据需求填写完整并保存在本地,在新版“模型目录”页面,根据模板批量性导入实体元模型

手动调整技术架构页面布局

当实体比较多时,界面展示会出现比较杂乱场景。此时可在信息架构列表中单击“操作”列的“编辑”,通过手动调整节点和联接的位置来调整技术架构页面布局。

相关文档