
1. 数据治理
∙从这里开始(查看 [标题编号])
∙配置数据标准(查看 [标题编号])
数据标准管理是数据质量的核心内容,是数据规范的保障。
∙配置数据模型(查看 [标题编号])
介绍数据模型的创建、审核等操作。
∙应用数据模型(查看 [标题编号])
∙管理数据安全(查看 [标题编号])
∙管理元数据(查看 [标题编号])
提供元数据的统一视图及相关的分析功能。
∙管理数据质量(查看 [标题编号])
数据质量管理包括制定数据质量标准、为数据模型添加质量稽核规则、监控质量稽核情况和查看数据质量报告等环节。
∙参考(查看 [标题编号])
1.1 从这里开始
∙业务背景(查看 [标题编号])
∙产品定位(查看 [标题编号])
∙基本概念(查看 [标题编号])
∙功能特性(查看 [标题编号])
∙操作流程(查看 [标题编号])
介绍DG的界面操作流程。
父主题: 数据治理(查看 [标题编号])
1.1.1 业务背景
1.1.2 产品定位
数据资产管理方案
产品特点
在UAP中的位置
与其他模块的交互
1.1.3 基本概念
数据标准&数据安全&数据质量&元数据管理
数据模型
开发环境&生产环境
1.1.4 功能特性
∙功能架构(查看 [标题编号])
∙数据质量(查看 [标题编号])
∙数据安全管理(查看 [标题编号])
∙元数据管理(查看 [标题编号])
∙融合多域的数据管理规则(查看 [标题编号])
父主题: 从这里开始(查看 [标题编号])
1.1.4.1 功能架构
功能视图
父主题: 功能特性(查看 [标题编号])
1.1.4.2 数据质量
质量规则管理
数据质量稽核
数据质量监控
数据质量知识库
1.1.4.3 数据安全管理
数据模糊化
文档管理
隐私策略管理
数据加解密
1.1.4.4 元数据管理
1.1.4.5 融合多域的数据管理规则
码表管理
业务术语
数据分层标准
数据模型设计标准
1.1.5 操作流程
介绍DG的界面操作流程。
DG主要操作流程如图1所示。
图1 DG主要操作流程
各操作流程描述如下:
1.配置数据源(Portal)
在大数据统一门户Portal中可进行数据源相关配置,包括租户的配置,以及FTP主机、数据库和Hadoop集群等数据源信息的配置。
2.配置数据标准
数据标准管理包括统一管理相关文档,统一定义业务术语、码表和去隐私算法等。
3.创建数据模型
可通过三种方式创建数据模型:
∙导入方式
如果有已配置好的数据模型,可直接导入。
∙采集方式
可从已有数据源中以采集方式自动生成数据模型。
∙手动新建方式
用户手动创建数据模型,包括基本信息配置、数据结构配置和存储规则配置。
4.审核数据模型
审核人员对数据模型进行审核。对通过审核的数据模型还可进行配置数据访问权限操作。
5.完成上述步骤后,可进行以下操作:
∙管理数据安全
对数据的访问权限进行控制。
∙管理元数据
对元数据的管理包括查看数据云图和查看模型开发报告。
∙管理数据质量
可实时监控数据质量,查看数据质量趋势分析报告。
∙建模和特征管理
可进行模型建模和特征管理,供应用开发和客户洞察用。
1.2 配置数据标准
1.2.1 配置数据分层标准
数据分层的目的是为客户提供一种统一的数据管理的业务视图。数据分层标准则是为数据分层预定义一套系统的数据规范。
前提条件
已登录DG前台。
操作步骤
1.选择“数据治理 > 数据管控 > 数据标准 > 数据分层标准”。
进入数据分层标准配置页面。
2.单击“新建目录”。
弹出“新建目录”窗口。
3.配置分层目录后单击“保存”。
此处“目录”是各个分层标准的分类目录,配置说明如图1所示。
图1 新建目录
| 表1 分层目录配置说明 | |
| 参数 | 参数解释 | 
| 名称 | 分层标准目录的名称。 | 
| 检核方式 | 配置是否需要强制检核。 ∙勾选“强制检核”:在生效范围内,当数据分层不满足此标准,将无法保存。 ∙未勾选“强制检核”:在生效范围内,当数据分层不满足此标准,仍然可以保存。  | 
| 生效范围 | 设定此数据标准的生效范围。分为以下范围: ∙限定目录层级 勾选此标准生效的目录层级。 ∙限定特定目录 可以选择指定的生效目录。 示例:假设已存在数据分层“02_OSD”。如果选择生效目录为“02_OSD”,则在“02_OSD”分层下创建子数据分层时,需要遵循本目录下的所有数据分层标准。在其他目录下创建数据分层则不需要遵循。 ∙未生效 此目录标准不在任何目录生效。  | 
| 限定目录层级 | 此参数当“生效范围”为“限定目录层级”时生效。勾选此标准生效的目录层级。 示例:只勾选“一级目录”、“二级目录”、“三级目录”,则创建数据分层时,一、二、三层目录需要遵循本目录下的所有数据分层标准,四、五层目录则不需要遵循。  | 
| 描述 | 分层标准目录的描述信息。 | 
弹出“新建规范”窗口。
5.配置一个规范后单击“保存”。
配置说明如图2所示,图中为一个“分层名称需要大写”的标准示例。
图2 新建规范
| 表2 新建规范配置说明 | |
| 参数 | 参数解释 | 
| 名称 | 分层规范的名称。 | 
| 描述 | 分层规范的描述信息。 | 
| 检核语句 | 使用系统函数设置SQL检核语句。 说明: 检核语句仅允许由“有效字段”、“系统函数”、“操作符”和“常量”组成。 ∙有效字段:从配置页面的“有效字段”列表中选取。 ∙系统函数:从配置页面的“系统函数”列表中选取。 ∙操作符:手动输入。 ∙常量:常量指固定的值,如数字1,字符串"test"等。 “系统函数”和“操作符”的详细使用说明请参见。 【示例】要求数据分层名称须大写的检核语句:upper(layerName)==layerName  | 
| 有效字段 | 系统自动显示可以配置的有效字段。 窍门: ∙鼠标悬浮在英文字段名称之上,自动显示字段中文名称,如下图所示。 ∙单击按钮可以直接将此字段添加至“检核语句”配置区域。  | 
| 系统函数 | 可以使用的系统函数,具体请参见检核语句说明(查看 [标题编号])。 窍门: 单击按钮可以直接将此函数添加至“检核语句”配置区域。  | 
模型设计标准描述了模型设计过程中的规范,包括各类数据库表的命名规范、字段类型等。
前提条件
已登录DG前台。
操作步骤
1.选择“数据治理 > 数据管控 > 数据标准 > 模型设计标准”。
进入“模型设计标准”配置页面。
2.单击“新建目录”。
弹出“新建目录”窗口。
3.配置模型设计标准目录后单击“保存”。
配置说明如图1所示。
图1 新建目录
| 表1 模型设计标准分类目录配置说明 | |
| 参数 | 参数解释 | 
| 名称 | 模型设计标准分类目录的名称。 | 
| 检核方式 | 配置是否需要强制检核。 ∙勾选“强制检核”:在标准生效范围内,如果模型不满足标准,系统将给出检核出错提示,并且用户无法保存该模型。 ∙未勾选“强制检核”:在标准生效范围内,如果模型不满足标准,系统将给出检核出错提示,但用户仍然可以保存该模型。  | 
| 数据标准类型 | 包括以下选项: ∙逻辑实体命名规范 主要用于进行数据库表的设计规范。 ∙数据字段命名规范 主要用于进行数据字段的设计规范。  | 
| 表类型 | 此参数当“数据标准类型”为“逻辑实体命名规范”时生效。包括以下类型: ∙普通表 ∙事实表 ∙普通维度表 ∙维表拉链表 ∙临时表 ∙外部表  | 
| 生效范围 | 设定此数据标准的生效范围。分为以下范围: ∙限定目录层级 勾选此标准生效的目录层级。 ∙限定特定目录 可以选择指定的生效目录。 示例:假设已存在数据分层“02_OSD”。如果选择生效目录为“02_OSD”,则在“02_OSD”分层下创建子数据分层时,需要遵循本目录下的所有数据分层标准。在其他目录下创建数据分层则不需要遵循。 ∙未生效 此目录标准不在任何目录生效。  | 
| 限定目录层级 | 此参数当“生效范围”为“限定目录层级”时生效。勾选此标准生效的目录层级。 示例:只勾选“一级目录”、“二级目录”、“三级目录”,则创建数据模型时,一、二、三层目录下的数据模型需要遵循本目录下的所有数据分层标准,四、五层目录下的则不需要遵循。  | 
| 描述 | 模型设计标准分类目录的描述信息。 | 
弹出“新建规范”窗口。
5.配置一个规范后单击“保存”。
配置说明如图2所示,图中为一个模型名称长度大于1的标准示例。
图2 新建规范
| 表2 规范配置说明 | |
| 参数 | 参数解释 | 
| 名称 | 模型规范的名称。 | 
| 描述 | 模型规范的描述信息。 | 
| 检核语句 | 使用系统函数设置SQL检核语句。 说明: 检核语句仅允许由“有效字段”、“系统函数”、“操作符”和“常量”组成。 ∙有效字段:从配置页面的“有效字段”列表中选取。 ∙系统函数:从配置页面的“系统函数”列表中选取。 ∙操作符:手动输入。 ∙常量:常量指固定的值,如数字1,字符串"test"等。 “系统函数”和“操作符”的详细使用说明请参见。 【示例】要求模型业务名称大于1的检核语句:length(businessName) > 1  | 
| 有效字段 | 系统自动显示可以配置的有效字段。 窍门: ∙鼠标悬浮在英文字段名称之上,自动显示字段中文名称,如下图所示。 ∙单击按钮可以直接将此字段添加至“检核语句”配置区域。  | 
| 系统函数 | 可以使用的系统函数,具体请参见检核语句说明(查看 [标题编号])。 窍门: 单击按钮可以直接将此函数添加至“检核语句”配置区域。  | 
1.2.3 管理文档
统一管理文档资源,包括文档的存储、查询、下载、更新等。相关文档主要供用户查阅,对业务逻辑没有技术上的约束。
前提条件
已登录DG前台。
背景信息
DG系统可以实现文档的分目录管理,包括文档的存储、查询、下载、更新等功能。
∙文档存储:在DG数据库中存储文档。
∙文档查询:根据文档的名称、描述或者关键字等信息可以进行查询。
∙文档上传和下载:每个文档的大小不能大于20MB。
∙文档更新:可上传新的版本更新已有文档。
目录说明
文档管理界面如图1所示。
图1 文档结构
∙根目录:不可编辑,即图中“文档管理”目录。
∙一级目录:文档管理一级目录,如图中“开发规范”、“设计标准”。右键单击可对其进行“新建文档”、“编辑”、“删除”和“刷新”管理。
∙二级目录:文档管理二级目录,如图中“前台界面”。右键单击可对其进行“上传附件”、“编辑”和“删除”管理。
操作步骤
1.选择“数据治理 > 数据管控 > 数据标准 > 文档管理”。
进入“文档管理”配置页面。
2.右键单击“文档管理”,选择“新建目录”。
弹出“新建目录”窗口。
3.配置文档目录后单击“保存”。
此处目录是文档的分类目录,配置说明如图2所示。
图2 新建目录
| 表1 文档管理目录配置说明 | |
| 参数 | 参数解释 | 
| 目录名 | 文档管理的分类目录的名称。 | 
| 英文缩写 | 配置为“名称”的英文缩写。 | 
| 描述 | 文档管理的分类目录的描述信息。 | 
弹出新建“新建文档”窗口。
5.配置一个文档名称和描述后单击“保存”。
配置说明如图3所示,图中为一个前台界面的示例。
图3 新建文档
| 表2 配置说明 | |
| 参数 | 参数解释 | 
| 文档名 | 文档管理的二级目录的名称。 | 
| 描述 | 文档管理的二级目录的描述信息。 | 
a.右键单击其中一个二级目录的名称,比如“前台界面”,选择“上传附件”,如图4所示。
图4 上传附件
b.配置附件相关信息后,单击“上传”,如图5所示。
图5 配置附件信息
7.其他操作。
右键选中文档名称,可对其进行下载、更新和删除操作,如图6所示。
图6 其他操作
1.2.4 配置业务术语
业务术语用于统一定义和描述企业内部的业务语言。业务术语主要供用户查阅,对业务逻辑没有技术上的约束。
前提条件
已登录DG前台。
操作步骤
1.选择“数据治理 > 数据管控 > 数据标准 > 业务术语”。
进入“业务术语”配置页面。
2.单击“新建目录”。
弹出“新建目录”窗口。
3.配置业务术语目录后单击“保存”。
此处目录是业务术语的分类目录,配置说明如图1所示。
图1 新建目录
4.在左侧导航中选择一个业务术语的目录名称,如刚新建的“成本类”,单击“新建业务术语”。
弹出新建“业务术语”窗口。
5.配置一个业务术语后单击“保存”。
配置说明如图2所示,图中为一个标准成本的示例。
图2 新建业务术语
6.其他操作。
选择业务术语目录,可以在“业务术语”区域单击对应术语右侧的“编辑”和“删除”,对术语进行编辑或删除。
1.2.5 配置码表
1.选择“数据治理 > 数据管控 > 数据标准 > 码表管理”。
进入“码表管理”配置页面,如图1所示。
图1 码表管理
2.单击“新增”。
弹出“新建编码-编码信息”窗口。
3.配置码表信息,单击“新增”添加一行记录,继续添加码表,添加完成后单击“保存”,如图2所示。
图2 配置码表
| 表1 码表配置说明 | |
| 参数 | 参数解释 | 
| 所属码表(左侧) | 选择已经存在的码表名称。 当所属码表已经存在时,直接单击下拉箭头选择对应的码表。  | 
| 所属码表(右侧) | 配置为码表的名称。 当所属码表不存在,手工输入新的码表名称。  | 
| 名称 | 码表中记录的名称。 | 
| 编码 | 码表中记录的编码。 配置完成后单击“新增”添加一行记录。  | 
数据库系统可以将当前租户下的数据源统一管理,便于后续元数据采集。
前提条件
∙在Portal系统管理菜单的数据库中,数据源信息已定义并发布。
∙在Portal系统管理菜单的多租户管理中,已将数据源分配给当前用户所属的租户。
∙若当前用户不属于任何租户,需要先在Portal系统管理菜单的多租户管理页面中,将当前用户加入到需要添加的数据库系统所属的租户中。
背景信息
将某一数据源的权限赋给租户的时候,需要指明允许该租户访问该数据源的database/schema,以及访问该数据源的用户名/密码。
通过数据治理的数据库系统功能,可以将该租户下的多个database/schema数据源统一管理起来,后续执行元数据采集操作时,只需要通过一个用户名和密码就可以访问该数据库系统下的所有数据源。
操作步骤
1.选择“数据治理 > 数据管控 > 配置 > 数据标准 > 数据库系统”。
进入“数据库系统”配置页面。
2.单击,新建数据库系统。
如图1所示。
图1 新建数据库系统
| 表1 数据库系统配置说明 | |
| 参数 | 参数解释 | 
| 名称 | 设置数据库系统名称。 | 
| 类型 | 选择数据库类型。当前版本只可以选择ORACLE。 | 
| URL | 可选值,输入需要管理的数据库系统的URL,用于提示本数据库系统对应的URL信息。 URL需要和后续待配置的数据源保持一致,URL示例:jdbc:oracle:thin:@IP:PORT/Service_Name。若不一致,则采集时只会采集此处配置的URL。  | 
| 用户名 | 输入运营商客户提供的数据库用户名,后续执行数据采集操作时,使用此用户进行采集,此用户只能采集其对应权限下的内容。 ∙当前在DG数据库的t_dg_config表中配置了此数据库用户默认拥有的15张数据库表权限,分别为: ∙元数据表 all_tables ∙元数据表描述 all_tab_comments ∙数据库对象 dba_objects ∙元数据视图 dba_views ∙元数据分区信息 all_part_tables ∙数据库角色权限 dba_role_privs ∙数据库用户 all_users ∙数据库角色 dba_roles ∙元数据表权限 dba_tab_privs ∙元数据表字段 all_tab_columns ∙元数据表字段描述 all_col_comments ∙元数据分区表 all_tab_partitions ∙元数据子分区 all_tab_subpartitions ∙元数据分区列 all_part_key_columns 元数据子分区列 all_subpart_key_columns 若运营商客户提供的数据库用户只有“all_***”表的权限,则部分没有给此用户赋权或者后续新增的物理实体(如表、视图等),将无法被采集。并且需要将每一个数据库实体的select权限赋予此数据库用户后,才可以执行采集操作。 ∙若当前运营商客户提供的数据库用户具有dba_***权限,将只需要将DG数据库t_dg_config表中的“all_***”修改成“dba_***”,后续即可对所有表执行采集操作。即将上述表修改为: ∙元数据表 dba_tables ∙元数据表描述 dba_tab_comments ∙数据库对象 dba_objects ∙元数据视图 dba_views ∙元数据分区信息 dba_part_tables ∙数据库角色权限 dba_role_privs ∙数据库用户 dba_users ∙数据库角色 dba_roles ∙元数据表权限 dba_tab_privs ∙元数据表字段 dba_tab_columns ∙元数据表字段描述 dba_col_comments ∙元数据分区表 dba_tab_partitions ∙元数据子分区 dba_tab_subpartitions ∙元数据分区列 dba_part_key_columns 元数据子分区列 dba_subpart_key_columns 修改完成后,需要重启DG才能生效。  | 
| 密码 | 输入用户密码,便于后面使用此用户名/密码统一登录其管理的数据库。 | 
3.在左侧列表中选择新建的数据库系统,单击“新增”。
弹出“选择数据源”窗口。如图2所示。
图2 选择数据源
可根据需要,将Portal中该用户所属租户管理的数据源,纳管到新建的数据库系统中。
说明:
每个新建的数据库系统只可以选择一个数据源,即只可以选择“jdbcUrl”中数据库连接串的IP和Port都一样的数据库条目,不可以同时选择不同的数据库,如图2所示。即使此处配了多个数据库,后续采集操作时也只会采集一个数据库中的数据信息。
创建完成后,如图3所示。
图3 数据库系统
为了使数据库系统用户后续执行数据采集操作,需要在对应的数据源中使用sys用户对数据库系统用户(以上述用户名oracle为例)进行赋权。赋权语句示例如下:
grant create role to oracle;
grant create user to oracle;
grant resource,connect to oracle with admin option;
1.3 配置数据模型
∙数据模型状态说明(查看 [标题编号])
数据模型包含草稿、待审核、审核成功等状态。在执行不同的操作时,状态会发生变化。
∙(可选)创建数据分层(查看 [标题编号])
数据分层的目的是为客户提供一种统一的数据管理的业务视图。各数据分层应遵循数据分层标准。采集方式、手动新建方式创建数据模型需要执行本操作,导入方式可不执行。
∙创建数据模型(导入方式)(查看 [标题编号])
将已有的数据分层和数据模型导入到环境中。
∙创建数据模型(逻辑实体采集方式)(查看 [标题编号])
本章节介绍如何从已有的数据库中采集逻辑实体(数据模型)。
∙创建数据模型(物理实体采集方式)(查看 [标题编号])
本章节介绍如何从已有的数据库中采集物理实体。
∙创建数据模型(手动新建方式)(查看 [标题编号])
本章节介绍如何在DG前台界面手动新建一个数据模型。
∙审核数据模型(查看 [标题编号])
数据模型提交后,有模型审核权限的用户可对其进行审核,只有审核通过的数据模型可供其他组件使用。
∙(可选)复制和导出数据模型(查看 [标题编号])
在配置数据模型时,可以复制数据模型,或者将数据模型导出至其他环境中使用,不同场景需要执行不同的操作。
1.3.1 数据模型状态说明
数据模型包含草稿、待审核、审核成功等状态。在执行不同的操作时,状态会发生变化。
数据模型的状态及转化关系,如图1所示。
图1 数据模型的状态及转化关系
相关状态的特别说明如下:
∙已审核的模型,在编辑时,只能添加字段信息和添加稽核规则。
∙草稿、待审核、已审核的模型支持拷贝、粘贴。支持模型信息、字段信息和存储规则的拷贝,粘贴后的模型名称自动命名为“CopyOf_XXX”,质量稽核规则无法拷贝。一般拷贝后,需要修改存储规则,添加稽核规则信息。
∙导出数据模型时,不支持质量稽核规则的导出和导入。
∙模型审核后,会在对应的数据库存储中自动创建物理表。在撤销已审核的模型时,会提示是否要删除此物理表。此数据模型重新提交审核时,会判断表名和数据结构与物理表中是否一致,若不一致则审核失败。
1.3.2 (可选)创建数据分层
数据分层的目的是为客户提供一种统一的数据管理的业务视图。各数据分层应遵循数据分层标准。采集方式、手动新建方式创建数据模型需要执行本操作,导入方式可不执行。
前提条件
已登录DG前台,并且该用户属于一个租户。
典型分层示例
数据分层约束条件:
∙一个数据模型只允许属于某一个层。
∙可根据业务需要随时增删改层信息,最多可支持5层。
某运营商数据分层示例如图1所示。
图1 数据分层
∙001RawDataLayer:基础数据层,客观、抽象、清晰、全面地反映企业数据的实际情况。
∙002LightweightSummaryLayer:轻度汇总层,对基础数据层的数据按照主题域进行域内汇总。
∙003In-depthSummaryLayer:对轻度汇总层中各实体的信息进行跨域汇总,形成统一视图。
▪003.99 MultidimensionaFeatureLibrary:高维特征库,实现具体局点长期的数据挖掘模型所需特征的积累。
∙004ApplicationDataLayer:应用层,轻度汇总层、高度汇总层和高维特征库都围绕企业运营分析的核心实体进行构建。
操作步骤
1.选择“数据治理 > 数据管控 > 数据模型 > 数据分层管理”。
进入数据分层配置页面。
2.右键单击“数据分层”,选择“新建层”。
弹出“新建层”窗口。
3.配置分层信息后单击“保存”。
配置说明如图2所示。
图2 新建层
| 表1 分层目录配置说明 | |
| 参数 | 参数解释 | 
| 分层名称 | 分层的名称。只支持字母、数字、下划线和汉字。 | 
| 英文缩写 | 此分层的英文缩写。只支持字母、数字和下划线。 | 
| 描述 | 此分层的描述信息。 | 
图3 新建成功
1.3.3 创建数据模型(导入方式)
1.选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”。
2.导入数据模型。
a.单击“模型管理”上方的导入按钮。
b.在弹出的文件选择窗口中选择模型数据文件“XXX.zip”,单击“打开”。
系统显示“导入成功”,完成模型导入。
说明:
导入的模型数据文件为“.zip”格式,目前支持以“模型复制”方式导出的文件的导入,不支持以“外部接口”方式导出的文件的导入。
3.(可选)编辑数据模型。
选中需要编辑的数据模型,单击右侧工作区的“编辑”,在编辑页面根据需要调整模型的基本信息、数据结构和存储规则。配置参数请参考模型配置参数(查看 [标题编号])。
说明:
一般情况下,导入方式创建的数据模型的存储规则与实际不匹配,需要根据实际情况修改。
4.(可选)编辑去隐私策略。
请参考添加去隐私策略(查看 [标题编号])。
5.右键需要提交的数据模型,选择“提交”,提交审核。
1.3.4 创建数据模型(逻辑实体采集方式)
本章节介绍如何从已有的数据库中采集逻辑实体(数据模型)。
前提条件
已登录DG前台,并且该用户属于一个租户。
已在Portal中配置用于数据模型采集的源数据仓库信息。
已经Portal中配置了数据模型存储规则所需的目标数据仓库信息,如果是HDFS要已经配置了Hadoop集群。
已创建所需数据分层。
背景信息
DG支持从已经存在的数据库中直接导入表定义,形成数据模型。
说明:
目前仅支持从Oracle、Greenplum类型的数据库采集数据模型。
操作步骤
1.选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”。
进入模型管理页面。
2.采集数据模型。
a.单击“模型管理”下属的某一层名称,右键选择“逻辑实体采集”。
弹出“逻辑实体采集—选择数据源”窗口,如图1所示。
图1 逻辑实体采集—选择数据源
b.参考表1中的参数解释,完成数据源选择。
| 表1 选择数据源配置说明 | |
| 参数 | 参数解释 | 
| 数据源 | 系统中已存在的数据源的名称。 | 
| 模式 | 数据库中的模式(Schema),为数据库对象的集合,一般一个用户对应一个模式。 | 
弹出“逻辑实体采集—选择逻辑实体”窗口,如图2所示
图2 模型采集—选择逻辑模型
d.勾选需要保存的数据模型,单击“保存”。
数据模型的业务名称、说明可编辑,“实体类型”不可选择,统一默认为普通表。若需要修改实体类型,可保存后再对实体进行编辑。
3.(可选)编辑数据模型。
右键单击模型名称,选择“编辑”,在编辑页面根据需要调整模型的基本信息、数据结构和存储规则。配置参数请参考模型配置参数(查看 [标题编号])。
4.(可选)添加去隐私策略。
请参考添加去隐私策略(查看 [标题编号])。
5.右键需要提交的数据模型,选择“提交”,提交审核。
1.3.5 创建数据模型(物理实体采集方式)
本章节介绍如何从已有的数据库中采集物理实体。
前提条件
∙在Portal系统管理菜单的数据库中,数据源信息已定义并发布。
∙在Portal系统管理菜单的多租户管理中,已将数据源分配给当前用户所属的租户。
∙在数据治理的“数据库系统”中已经完成数据源的配置。
背景信息
对部分存量局点,客户已经有了一套数据模型体系,大数据平台中已有了大量的数据库表或文件。并且基于这些数据库表和文件,已构建了一些应用。Universe的数据治理平台上线后,需要将这些数据模型、数据库表采集到我们系统中,以实现统一数据治理的目的。在这种场景下,可以通过元数据采集功能,统一在Universe数据治理平台界面上执行采集操作,而不需要手工逐一创建数据模型。
说明:
目前仅支持从Oracle数据库采集物理实体。
操作步骤
1.选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”。
进入模型管理页面。
2.采集数据模型。
a.单击,进入数据采集页面。
弹出“数据采集”窗口,如图1所示。
图1 数据采集
b.单击下“新建采集”,创建采集任务。
弹出“新建采集”窗口,如图2所示。
图2 新建采集任务
采集参数说明如表1所示。
| 表1 采集参数说明 | ||
| 配置项 | 配置说明 | |
| 选择数据源 | 选择需要采集的数据源信息。即选择在数据库系统中创建的数据库信息。 | |
| 选择采集对象 | 选择待采集的内容: ∙Table:表 ∙View:视图 ∙Role_and_User:数据库用户和角色  | |
| 采集参数配置 | 包含项设置 | 采集时需要采集此配置项下匹配到的内容。 | 
| 过滤规则设置(模式) | 根据schema名称过滤,采集时需要采集此配置项下的schema。多个schema以“,”分割。 | |
| 过滤规则设置(表) | 根据Table或View名称过滤,采集时需要采集此配置项下的Table或View。多个Table或View以“,”分割。 | |
| 排除项设置 | 采集时不采集此配置项下匹配到的内容。 | |
| 过滤规则设置(模式) | 根据schema名称过滤,采集时不需要采集此配置项下的schema。多个schema以“,”分割。 | |
| 过滤规则设置(表) | 根据Table或View名称过滤,采集时不需要采集此配置项下的Table或View。多个Table或View以“,”分割。 | |
| 映射设置 | 通过设置前后缀的方式,将物理实体名称和逻辑实体名称关联起来。 | |
d.单击“开始采集”,执行采集过程。
如图3所示。
采集过程中可以通过单击采集任务前的,查看采集过程。直到所有的状态都显示“采集成功”。
说明:
数据采集还可以通过USE定时任务方式执行。保存采集任务后,数据会同步到USE中,配置过程和数据稽核任务配置类似,可参考配置和执行稽核任务(查看 [标题编号])。
图3 采集页面
3.单击“返回”,回到数据模型页面。
4.单击左侧“物理实体(x/y)”,可以看到采集到的视图、表以及用户和角色信息。
括号中的“x”表示未匹配上逻辑实体的物理实体数,“y”表示物理实体总数。
采集到的物理实体会自动与当前逻辑模型进行匹配,匹配成功时,会自动将物理实体纳入逻辑模型管理。当前匹配过程中,存在如下约束:
∙支持对数据库中的表进行匹配,不对数据库视图进行匹配。
∙匹配时系统会判断字段结构(字段名称+字段顺序)是否相同,如相同则判断物理实体名称是否符合逻辑模型名称+前后缀,如均符合要求,则匹配成功。
∙已配置存储规则的逻辑模型不参与匹配。
∙由于目前只做一对一匹配,即一个逻辑模型只能匹配一个物理实体,故对于存在多个分区表的物理实体也只会匹配其中的一个。
∙匹配时不对名称大小写进行判断,统一转换成大写进行匹配。如物理实体名称是小写,匹配上逻辑模型后,该逻辑模型在编辑时会出现表名获取不到的错误。
1.3.6 创建数据模型(手动新建方式)
本章节介绍如何在DG前台界面手动新建一个数据模型。
前提条件
已登录DG前台,并且该用户属于一个租户。
已经配置了相关的数据源信息。
已创建所需数据分层。
背景信息
存储周期相关的说明,请参见存储周期配置说明(查看 [标题编号])。
操作步骤
1.选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”。
进入模型管理页面。
2.单击“模型管理”下属的某一分层名称,在右边工作区选择“创建”。
用户只可操作相同租户的用户创建的目录。
3.配置模型信息。
配置过程如下,配置参数请参考模型配置参数(查看 [标题编号])。
a.配置逻辑实体信息,如图1所示,完成后单击“下一步”。
图1 配置模型基本信息
b.配置数据结构,如图2所示,完成后单击“下一步”。
窍门:
此处支持Excel直接黏贴,可以直接原数据结构复制至此处。操作说明:复制数据后,直接在此配置空格中处按住“Ctrl+V”键即可。
图2 配置数据结构
c.配置存储规则,选择数据源,完成后单击“保存存储规则”。
可选数据源为已在Portal中配置好的数据源。
图3 配置存储规则
常见的数据源的存储规则配置页面如下:
∙Hadoop数据源
说明:
选择Hadoop数据源默认情况需要选择生产类型的Hadoop集群。若选择测试类型的Hadoop集群,需要修改DG的“${HOME}/tomcat/webapps/universe/WEB-INF/classes/dam.properties”配置文件的“dg.env.type”配置项。
Hadoop数据源分为HDFS和Hive。
图4 Hadoop数据源
∙RDB数据源
RDB数据源包括支持Oracle、Greenplum、Vertica、DB2和GBase。数据源需要在Portal中配置好才能选择。配置界面如图5所示,配置参数请参考模型配置参数(查看 [标题编号])。
图5 RDB数据源
d.单击“下一步”,配置质量稽核规则后,单击“保存”。
单击“新建稽核规则”,配置稽核规则的详细信息。详细内容请参见添加数据质量规则(查看 [标题编号])。
系统出现新建完成后的模型,如图6示例所示。
图6 新建模型成功
4.添加去隐私策略。
请参考添加去隐私策略(查看 [标题编号])。
5.选择需要提交的数据模型,单击“提交”,提交审核。
1.3.7 审核数据模型
数据模型提交后,有模型审核权限的用户可对其进行审核,只有审核通过的数据模型可供其他组件使用。
前提条件
已登录DG前台。
数据模型已提交审核。
背景信息
如果数据模型已经提交成功,则可以进行模型审核。
如果数据模型已经审核通过,DG支持新增数据结构列,但不允许修改和删除已有的数据结构信息。
操作步骤
1.选择“数据治理 > 数据管控 > 数据模型 > 模型审核”。
进入模型审核页面,如图1所示。
图1 模型审核
2.审核模型。
选择需要审核的模型,单击“通过”,完成审核。
1.3.8 (可选)复制和导出数据模型
在配置数据模型时,可以复制数据模型,或者将数据模型导出至其他环境中使用,不同场景需要执行不同的操作。
复制
对于配置好的模型,支持复制粘贴,避免重复的模型信息和字段信息的重复填写。操作方法如下:
1.选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”。
2.勾选需要复制的模型后选择“复制”。如图1所示。
图1 模型导出菜单
3.选择“粘贴”。
完成后,在此节点下面生成拷贝的数据模型,如“CopyOf_XXX”。支持模型信息、字段信息和存储规则的拷贝,质量稽核规则无法拷贝。一般拷贝后,需要修改存储规则,添加稽核规则信息。
导出
导出到本地保存备份。
1.选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”。
2.右击“模型管理”节点,或者需要导出的某数据分层节点,或者在数据模型节点(要求已通过审核)选择需要导出的模型,然后选择“导出 > 模型复制”菜单。如图2所示。
图2 模型导出菜单
浏览器将会下载模型数据压缩包XXX.zip文件(文件中包含数据模型及数据分层信息)。
导出(供第三方平台调用)
导出模型数据给第三方元数据管理平台时,请选择此操作。需要提前配置第三方元数据管理平台的相关信息,目前支持的第三方元数据管理平台主要为普元元数据。
1.选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”。
2.右击“模型管理”节点,或者需要导出的某数据分层节点,或者在数据模型节点(可以为草稿状态,或已通过审核状态)选择需要导出的模型,然后点击“导出 > 外部接口”菜单。
浏览器将会下载模型数据压缩包XXX.zip文件(文件中包含数据模型及数据分层信息)。
1.4 应用数据模型
∙模型建模(查看 [标题编号])
建立模型之间的关联关系,供数据探索等其他应用使用。
∙管理域和特征(查看 [标题编号])
建立域和特征,供ISAE(数据探索)基于特征取数时使用。
父主题: 数据治理(查看 [标题编号])
1.4.1 模型建模
建立模型之间的关联关系,供数据探索等其他应用使用。
前提条件
已登录DG前台。
相关数据模型已通过审核。
背景信息
模型相关概念请参考表1。
| 表1 模型相关概念 | |
| 概念 | 解释 | 
| 维度 | 人们观察数据的特定角度,是考虑问题时的一类属性,属性集合构成一个维(例如:时间维、地区维等)。维度与数据的有效性和表达业务成效的关键性能指标相互依赖。 | 
| 级别 | 维度的最小单元,通常一个级别可以成为一个分析的粒度。 例如:在时间维度中,可以将“年-季度-月”划分为一个层次,其中“年”、“季度”和“月”成为这个层次的3个级别。同理,当建立产品维度时,可以将“产品大类-产品子类-产品”划为一个层次,其中“产品大类”、“产品子类”和“产品”成为这个层次的3个级别。 | 
| 层次 | 可以根据数据库表结构的特点来定义层次。层次分传统层次和递归层次。 ∙传统层次 由一个或以上的级别组成,用来表示数据结构的层级关系。 例如:一个包含“年”、“月”、“日”三个级别的时间维度,可以将级别“年”、“月”作为一个层次“年月”,可以将级别“月”、“日”作为一个层次“月日”。 ∙递归层次 又称父子层次。在具有树形结构特征的表结构(如:雇佣关系表、地理区域关系表)中,各维度成员的子成员都记录了父成员的ID,父子层次即由维度成员间父子关系组成的层次结构。 例如:在一个公司或行政机构中,雇佣关系数据表中,常存在雇员姓名(employee),雇员ID(employee_id),主管ID(supervisor_id)等字段,您可以指定supervisor_id为父列,指定supervisor_id列中某一主管ID为父节点ID,就可以构造以该主管为父节点,以下级别的雇员为子节点的层次结构。  | 
1.选择“数据治理 > 数据管控 > 数据模型 > 模型建模”。
进入模型建模页面。“模型建模”下展示了已在Portal中配置的数据源。
2.单击选择“模型建模”下的数据源。
右侧显示此数据源中的所有已通过审核的维度表和事实表(实体类型为事实表,存储周期为年、月、日或小时的数据模型)。
3.在右侧“维度表”、“事实表”中选择需要的表,拖动到模型建模区域。
4.拖动鼠标,建立表之间的关联关系。
关联关系包括内连接、左外连接、右外连接和全外连接。
模型建模界面如图1所示。
图1 模型建模界面
5.(可选)创建维度。
a.在右侧“层次”节点上右击,选择“创建维度”菜单。
b.配置维度基本信息。
请参考表2配置相关信息。
| 表2 层次基本信息 | |
| 参数 | 参数解释 | 
| 名称 | 此维度的名称。 | 
| 维度表 | 此维度对应的维表。 | 
| 时间维度 | 此维度是否是时间维度。 | 
即配置该维度的层次和级别信息。单击“新增”添加层次信息。一个维度下可有多个层次信息,一个层次下可有多个级别。
| 表3 层次和级别信息 | |
| 参数 | 参数解释 | 
| 【层次】 | |
| 名称 | 此层次的名称。 | 
| 层次主键 | 从所属维表中选择一个字段作为此层次的主键。 | 
| 递归层次 | 该层次是否是递归层次。 | 
| 【级别】 单击“新增”添加级别信息。完成配置后将对应的级别从“待选级别”选择到“已选级别”。  | |
| 名称 | 级别的名称。 | 
| 标题列 | 维表中的标题列,即ISAE前台页面显示维度时展示的列。 | 
| 排序列 | ISAE前台页面显示标题列的排列顺序。 | 
| 编码列 | 维表中的编码列。 | 
建立域和特征,供ISAE(数据探索)基于特征取数时使用。
前提条件
已登录DG前台。
相关数据模型已通过审核。
背景信息
Universe针对大数据的特点,建立分层分域的数据模型,可将数据分为若干层次,如基础数据层、融合信息层、应用数据层。根据通信服务提供商的商业本质特征,各层次又可分别划分为若干主题域,例如参与人、服务、资源等。
特征指某一物质自身所具备的特殊性质,是区别于其他物质的基本象征和标志。如用户的基本信息中,性别、年龄、身高等都是用户的特征。Universe大数据分析平台中的特征是在数据模型的基础上提取得到的。
ISAE基于特征取数,不需要关注数据模型,也不需要关注数据模型之间的关联关系,用户选取相应的特征字段,设置计算字段,即可以提取相应业务实体的数据。
操作步骤
1.选择“数据治理 > 数据管控 > 数据模型 > 特征管理”。
进入特征管理页面。
2.新建域。
a.右键页面左侧“特征管理”节点,选择“新建域”菜单。
b.参考表1配置域信息,单击“保存”按钮。
| 表1 域参数说明 | |
| 参数 | 参数解释 | 
| 域名称 | 该域的名称。 | 
| 域中模型必有标识类型 | 该域中的模型必须带有的标识类型。可选择包括: ∙用户ID ∙用户号码 ∙区域标识 ∙统计周期 ∙CI ∙产品ID ∙基站ID ∙终端ID ∙LAC ∙渠道ID  | 
| 域中模型关联字段 | 域中模型间相互关联的字段,“域中模型必有标识类型”的子集。 | 
| 域中主表 | 该域中的主表。 域中主表需要配置为日周期或月周期的事实表,相关的数据结构和存储规则配置完整,且通过审核后才能在此处设置。  | 
| 默认业务字段 | 用作ISAE中基于特征模型取数时显示的默认业务字段。 | 
| 描述 | 描述性信息。 | 
为上一步中的域建立子域,仅作描述,不构成技术上的约束。
a.右键域节点,选择“新建目录”菜单。
b.配置目录名称,单击“保存”按钮。
4.新建特征。
a.右键目录节点,选择“新建特征”菜单。
b.单击选择需要建立特征的表,页面如图1所示。
图1 新建特征
5.勾选要生成特征的字段(可选择多个字段),单击按钮。
6.参考表2配置特征信息。
| 表2 特征参数 | |
| 参数 | 参数解释 | 
| 特征名 | 特征的名称。 | 
| 业务口径 | 对特征的业务角度的描述。 | 
| 技术口径 | 对特征的技术角度的描述。 | 
| 关联维表 | 该特征所关联的维表。配置请参考图2和表3。 | 
| 取值列 | 关联维表的取值列。仅显示用,如需编辑请单击“关联维表”进行配置。 | 
| 展示列 | 关联维表的展示列。仅显示用,如需编辑请单击“关联维表”进行配置。 | 
| 是否约束字段 | 供客户洞察用,标识实时属性,如实时话费余额、实时剩余流量。 | 
| 默认值 | 供客户洞察用。 | 
| 描述 | 描述性信息。 | 
8.图2 关联维表
| 表3 关联维表参数说明 | |
| 参数 | 参数解释 | 
| 维度取值列 | 特征值与该字段相对应。 | 
| 维度展示列 | 维度取值所对应的描述信息。 | 
| 排序列 | 展示维度时按此列排序。 | 
| 排序方式 | 可选: ∙递增 ∙递减  | 
图3 特征管理页面
1.5 管理数据安全
∙管理去隐私算法(查看 [标题编号])
DG提供多种加密算法和数据模糊化算法。为数据模型添加去隐私策略时,可以指定相关字段使用某去隐私算法。本章节重点介绍数据加密算法的密钥生命周期管理操作方法。
∙添加去隐私策略(查看 [标题编号])
数据治理支持对数据模型设置去隐私策略,BDI等组件处理数据时可按此策略进行数据去隐私处理。
∙管理数据访问权限(查看 [标题编号])
数据治理支持将当前用户所属租户新建的数据分层或模型的访问权限赋予其他租户。
∙创建数据角色(查看 [标题编号])
新增数据角色,并赋予其相关数据源的数据库角色的权限。
∙管理操作员权限(查看 [标题编号])
赋予操作员相关数据源的数据库用户的权限。
∙查看用户与角色权限(查看 [标题编号])
查看当前操作员被赋予的数据源用户与角色的权限。
∙查看我的权限(查看 [标题编号])
查看当前操作员被赋予的权限。
1.5.1 管理去隐私算法
DG提供多种加密算法和数据模糊化算法。为数据模型添加去隐私策略时,可以指定相关字段使用某去隐私算法。本章节重点介绍数据加密算法的密钥生命周期管理操作方法。
前提条件
已登录DG前台。
背景信息
数据治理内置的去隐私算法如表1所示。
| 表1 去隐私算法说明 | |
| 算法 | 说明 | 
| AES-128 | 数据加密算法。 AES(Advanced Encryption Standard),即高级加密标准,是美国联邦采用的一种区块加密标准。这个标准用来替代原先的DES。与DES相比,AES的安全性更好,效率更高。  | 
| FF_ATOMIZE | 数据雾化算法。 这不是一个安全加密算法,仅能用于低安全要求的数据雾化,不能当做加密算法使用。  | 
密钥生命周期管理,指的是可以按日期为算法指定不同的密钥,例如2016年1月使用密钥A,2016年2月使用密钥B。
操作步骤
1.选择“数据治理 > 数据管控 > 数据安全 > 去隐私算法管理”。
进入“去隐私算法”配置页面,如图1所示。
图1 去隐私算法
2.管理密钥生命周期。
此处以“AES-128”为示例进行密钥生命周期管理操作说明。
a.左侧菜单选择“AES-128”。
b.单击右上角“”编辑按钮。
c.图2 AES-128
d.在“密钥信息”中,单击“新增”在表单中新增一条空白记录。
图3 设置密钥生命周期
e.输入密钥、生效日期和失效日期。
说明:
各密钥生命周期的日期必须连续且不重叠,在界面的展示即从密钥表单最后一条至第一条的有效周期按从远到近连续显示。配置时建议按日期从远到近连续新增,例如,先新增2016年1月的密钥,再新增2016年2月的密钥,再新增2016年3月的密钥。如果未按此顺序新增,或新增的密钥周期不连续,可通过“上移”、“下移”操作调整密钥顺序,也可通过“在上方插入行”、“在下方插入行”插入一条新的密钥信息。
f.(可选)根据需要重复2.d和2.e,增加密钥。
g.完成设置后“保存”。
h.查看密钥。
单击页面“点击查看”,需要输入当前用户登录的密码,即可查看明文显示的密钥。
1.5.2 添加去隐私策略
数据治理支持对数据模型设置去隐私策略,BDI等组件处理数据时可按此策略进行数据去隐私处理。
前提条件
已登录数据治理前台。
背景信息
数据治理支持的去隐私策略包括:
∙字段加密
可为需要加密的字段设置加密算法。
说明:
分区存储时,分区字段不能做加密设置。
∙字段模糊化
支持数据雾化(加*号处理),雾化起点和雾化长度可设置。
说明:
DG中仅是对数据隐私策略进行定义,不对存储的物理数据直接生效,具体的实现需要使用方自身配合此处的定义来完成。
∙当前仅BDI可通过管控抽取、管控加载节点,实现对存放在HDFS、Hive上的数据加解密特性,其他组件不支持此特性。
建议使用BDI管控抽取、管控加载节点配合此处的去隐私策略,对数据模型进行加密处理,以确保用户数据受到更严格的保护。 若数据不进行加密操作,可能存在数据泄密的风险。
∙当前仅Persona支持数据雾化特性,其他组件不支持此特性。
不同状态的数据模型可进行的去隐私策略参见下表。
| 表1 模型状态和去隐私策略对应关系 | |
| 数据模型状态 | 可添加的去隐私策略 | 
| 草稿 | 加密、模糊化 | 
| 待审核 | 模糊化 | 
| 已审核 | 模糊化 | 
1.选择“数据治理 > 数据管控 > 数据安全 > 数据去隐私策略管理”。
进入设置“数据去隐私算法策略”配置页面。
2.选择需要去隐私的数据模型,如图1所示。
图1 选择模型
3.单击(加密)或(模糊化)。
设置相应的列的去隐私策略。设置加密策略如图2所示。
图2 设置数据加密策略
设置模糊化策略如图3所示。
图3 设置模糊化策略
| 表2 模糊化策略参数说明 | |
| 参数 | 解释 | 
| 前缀长度 | 指定从字符串起始位置向后的雾化长度。 | 
| 后缀长度 | 指定从字符串结束位置向前的雾化长度。 | 
| 对【前缀/后缀】掩码 | 可选值: ∙是:对字符串的前缀后缀执行雾化。 ∙否:对字符串的中间部分执行雾化。  | 
1.5.3 管理数据访问权限
数据治理支持将当前用户所属租户新建的数据分层或模型的访问权限赋予其他租户。
前提条件
说明:
通过FusionStage安装大数据平台时,不存在此功能,此时租户功能由FusionStage平台提供。
已在数据源中配置多租户,并且该用户属于一个租户。
操作步骤
1.选择“数据治理 > 数据管控 > 数据安全 > 数据访问权限管理”。
进入数据权限管理页面,如图1所示。
左侧显示为系统除了当前租户外的其他租户。右侧显示为当前租户下的数据分层和模型信息。
图1 数据权限管理
2.选中某租户,赋予此租户当前租户的分层或模型的数据查看权限,如图2所示。
图2 赋予权限
3.单击右下“保存”,完成权限赋予。
1.5.4 创建数据角色
新增数据角色,并赋予其相关数据源的数据库角色的权限。
前提条件
数据库系统(查看 [标题编号])中已经完成数据源的配置。
数据采集(查看 [标题编号])中已经完成数据采集操作。
背景信息
一个租户可能关联很多数据源,每个数据源中都有多个角色。若系统需要跨不同的数据源访问数据,则需要在多个数据库角色间切换。新增了数据角色的概念后,一个数据角色即可关联不同数据源的不同数据库角色,以达到一个角色可以访问不同数据源的目的。
操作步骤
1.选择“数据治理 > 数据管控 > 配置 > 数据安全 > 数据角色”。
进入“数据角色”配置页面。
2.单击,弹出“新建分组”窗口。
输入新建的分组名称(如Data_Role),然后单击“保存”。保存后如图1所示。
图1 新建分组
3.新建数据角色。
单击新建分组的名称,然后单击“新增角色”按钮。在新增角色窗口中输入新建角色的名称(如Data_Role_01),然后单击“保存”。保存后如图2所示。
图2 新建角色
数据角色可以查看、修改、删除。删除数据角色时,可以在弹出的对话框中,选择同时删除其在数据源中创建的数据库角色。
4.修改角色权限。
a.单击数据角色名称后面的“修改”,修改角色权限。如图3所示。
图3 配置角色权限
b.基本信息修改。
若要修改数据角色的名称,可以在此处修改。
c.关联角色配置。
此处列出了当前操作员所在租户在“数据库系统”里面配置的所有数据源信息。
可以在“关联角色”下面的每个数据源里面选择一个角色,与正在创建的数据角色关联,使当前的数据角色也具有已选择数据源里面数据库角色的功能。一个数据角色只能关联同一数据源的一个数据库角色。
如果没有满足条件的数据库角色,可以单击数据源后面的,在数据源里面新建一个数据库角色。
d.权限配置。
此处可以选择数据角色关联的逻辑实体和物理实体。
如果某个数据源没有选择数据库角色,则在列表中不显示该数据源中的逻辑实体和物理实体。
根据选择的某个数据源的数据库角色,列表中显示该数据源中采集到的逻辑实体和物理实体,同时自动选择数据角色关联的表和视图。若不需要某些逻辑实体和物理实体权限,也可取消选择。
将逻辑实体或物理实体权限授权给角色时,针对“逻辑实体”下的实体名称,系统不区分大小写。
5.单击“保存”,保存配置的内容。
6.单击“同步”,将配置同步到数据库中。
同步成功后,系统弹出同步成功提示框。
1.5.5 管理操作员权限
赋予操作员相关数据源的数据库用户的权限。
前提条件
数据角色(查看 [标题编号])已经创建。
背景信息
将Universe系统中租户的操作员与关联的数据源中的数据库用户、Universe系统中创建的数据角色关联起来,使操作员具有不同数据源数据库用户、数据库角色、数据库表和视图的操作权限,从而实现Universe系统的操作员跨数据源的数据访问能力。
操作步骤
1.选择“数据治理 > 数据管控 > 配置 > 数据安全 > 操作员”。
进入“操作员”配置页面。
在左侧的租户列表中,可以查看当前系统中的租户。单击租户名,可以查看各租户中的操作员。
2.单击某一租户名称,找到需要赋权的操作员。如图1所示。
图1 操作员
3.为操作员赋权。
a.单击“授权”,进入操作员授权配置页面。如图2所示。
图2 操作员授权
b.关联用户配置。
此处列出了当前操作员所在租户在“数据库系统”里面配置的所有数据源信息。
可以在“关联用户”下面的每个数据源里面选择一个用户,与当前操作员关联,使当前操作员也具有与已选择数据源里面数据库用户相同的权限。操作员只能关联同一数据源的一个数据库用户。
如果没有满足条件的数据库用户,可以单击数据源后面的,在数据源里面新建一个数据库用户。
新建数据库用户时,配置页面说明如表1所示。
| 表1 新建数据库用户配置 | |
| 配置项 | 配置项说明 | 
| 用户名 | 输入创建的数据库用户名称。 | 
| 密码 | 输入创建的数据库用户密码。 | 
| 默认表空间 | 填写当前数据库已存在的表空间名称。若不填写,则创建用户时,使用数据库自动分配的默认表空间 | 
| 临时表空间 | 填写当前数据库已存在的表空间名称。若不填写,则创建用户时,使用数据库自动分配的临时表空间 | 
单击“DATAROLE“,可以勾选在“数据角色”操作中配置的数据角色名称,表示将对应角色的权限赋给本操作员。
d.自定义权限配置。
单击“自定义”,可以选择数据用户关联的逻辑实体和物理实体。
如果某个数据源没有选择数据库用户,则在列表中不显示该数据源中的逻辑实体和物理实体。
根据选择数据源的数据库用户,列表中显示该数据源中采集到的逻辑实体和物理实体,同时自动选择数据用户关联的表和视图。若不需要某些逻辑实体和物理实体权限,也可取消选择。
将逻辑实体或物理实体权限授权给操作员时,针对“逻辑实体”下的实体名称,系统不区分大小写。
4.单击“保存”,保存配置的内容。
5.单击“同步”,将配置同步到数据库中。
同步成功后,系统弹出同步成功提示框。
1.5.6 查看用户与角色权限
查看当前操作员被赋予的数据源用户与角色的权限。
前提条件
数据角色(查看 [标题编号])已经创建。
操作员(查看 [标题编号])已经配置。
背景信息
在Universe中完成数据角色和操作员的配置后,前台页面提供查询能力。
操作步骤
1.选择“数据治理 > 数据管控 > 配置 > 数据安全 > 用户与角色”。
进入“用户与角色”配置页面。
2.可以选择“类型”和“数据库系统”进行过滤。单击“查询”,如图1所示。
图1 用户与角色查看
1.5.7 查看我的权限
查看当前操作员被赋予的权限。
前提条件
数据角色(查看 [标题编号])已经创建。
操作员(查看 [标题编号])已经配置。
背景信息
在DG中完成数据角色和操作员的配置后,前台页面提供当前用户权限的查询能力。
操作步骤
1.选择“数据治理 > 数据管控 > 配置 > 我的权限”。
进入“我的权限”查看页面。
2.可以查看当前用户被赋权的关联用户、角色和可访问的实体,如图1所示。
图1 我的权限查看
1.6 管理元数据
提供元数据的统一视图及相关的分析功能。
∙查看数据云图(查看 [标题编号])
通过数据云图的方式展示数据分层、数据模型等。
∙查看模型开发报告(查看 [标题编号])
查看数据模型开发报告,包括模型操作人、操作时间、被引用次数等信息。开发报告记录的是审核成功的新增或修改的数据模型的记录。
父主题: 数据治理(查看 [标题编号])
1.6.1 查看数据云图
1.选择“数据治理 > 数据管控 > 元数据管理 > 数据云图”。
进入数据云图页面,如图1所示。
数据分层的气泡中的数值表示该分层下数据量的大小。数据量大小的统计目前仅支持HDFS的数据源。
图1 数据云图
2.双击云图某一圆形,可进入下一层数据分层。
∙数据分层信息可视:数据云图首页展示第一层数据分层信息,显示每个层的名称和该层下数据模型的个数。
∙随机图形区分:数据云图提供不同的图形(云图形状的大小和颜色)来区分数据分层和数据模型。
∙支持钻取:通过双击某一数据分层,直接从图形中进入下一层数据分层,直至钻取到数据模型。
∙分层搜索:数据云图左侧支持分层搜索功能,可以快速显示云图信息。
3.单击按钮返回上一层视图,单击按钮返回一级目录视图。
1.6.2 查看模型开发报告
查看数据模型开发报告,包括模型操作人、操作时间、被引用次数等信息。开发报告记录的是审核成功的新增或修改的数据模型的记录。
操作步骤
1.选择“数据治理 > 数据管控 > 数据模型 > 开发报告”。
进入开发报告页面。
2.在“查询条件”区域设置查询条件,单击“查询”。
模型开发报告页面如图1所示。
图1 查询模型开发报告
∙查询结果列表中可以看到设置查询条件内的模型相关信息。
∙汇总结果列表中可以看到“新增模型数”和“修改模型数”汇总。
1.7 管理数据质量
数据质量管理包括制定数据质量标准、为数据模型添加质量稽核规则、监控质量稽核情况和查看数据质量报告等环节。
数据质量管理工作流程如表1所示。
| 表1 数据质量管理工作流程 | |
| 任务 | 说明 | 
| 制定数据质量标准 | 在DG页面上制定数据质量标准。 | 
| 添加质量稽核规则 | 在DG页面上为数据模型添加质量稽核规则。每次添加稽核规则之后,后台自动向USE上报稽核任务。 | 
| 配置调度信息 | 在USE页面上配置稽核规则的调度信息。操作步骤请参考USE操作指南。 | 
| 执行调度 | USE按调度计划自动执行调度任务。 | 
| 监控质量稽核情况 | 在DG页面上监控质量稽核情况。 | 
| 查看数据质量报告 | 在DG页面上查看数据质量分析报告。 | 
大数据分析平台提供数据质量管理功能,可定时稽核数据质量,并根据稽核结果进行数据质量实时监控、历史数据质量分析和数据质量知识库管理。
∙添加数据质量规则(查看 [标题编号])
通过添加数据质量稽核规则,将通用质量规则和各数据库、数据库表(含字段)建立关联关系,为数据质量分析提供依据。
∙配置和执行稽核任务(查看 [标题编号])
本章节介绍如何配置和执行质量稽核任务。
∙实时监控数据质量(查看 [标题编号])
数据质量监控页面展示了最近若干次质量稽核情况,用于实时监控数据质量,及时发现质量问题。
∙分析数据质量趋势(查看 [标题编号])
以曲线图方式展示数据质量趋势,并可提供详细的实体质量信息。
∙管理数据质量知识库(查看 [标题编号])
提供图形化界面将生产运维过程产生的问题、人员报告数据质量问题、维护发现的问题、业务人员反馈的问题经过处理过程转到知识库,对问题的原因和解决方法进行分类记录,实现历史经验沉淀和查询。
∙任务示例(查看 [标题编号])
本章节以“用户日表”中“用户标识”字段的唯一性检查为例,介绍数据质量管理的完整流程。
父主题: 数据治理(查看 [标题编号])
1.7.1 数据质量管理操作流程
1.7.2 添加数据质量规则
通过添加数据质量稽核规则,将通用质量规则和各数据库、数据库表(含字段)建立关联关系,为数据质量分析提供依据。
前提条件
已登录DG前台。
已在统一调度页面配置了集群信息,配置方法请参考集群管理(查看 [标题编号])。
说明:
如果未在统一调度页面配置DG集群信息,则添加的质量规则无法在统一调度页面调度执行。
操作步骤
1.选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”。
进入模型管理页面。
2.在左侧导航中选择需要配置质量规则的数据模型,单击右侧的“编辑”。
3.单击“质量规则”页签,单击“新建稽核规则”,参考表1对稽核规则进行配置。
| 表1 稽核规则通用配置说明 | |
| 参数 | 参数解释 | 
| 质量规则 | 可选值: ∙有效性 ∙一致性 ∙准确性 只有事实表且“存储周期单位”不是“无”时,才能配置准确性相关的数据质量稽核规则。“存储规则”中设置存储在HDFS上的数据模型只支持配置准确性稽核规则。 ∙自定义  | 
| 阈值 | 有效性、一致性和自定义规则的阈值指不符合质量标准的数据占总数据的比例。有效性、一致性和自定义规则的阈值的取值范围为0~100。 针对每条有效性规则,支持单独配置阈值。 准确性阈值指环比波动率/同比波动率的值。 质量分数计算方法: ∙如果检核数为0时,质量得分为null。 ∙如果检核数不为0时: ▪当阈值为0时,若通过的检核数为0时,质量得分为0分,否则质量得分为100分。 ▪当阈值不为0时,若“不通过的检核数*100/总检核数>=阈值”,质量得分为0分,否则质量得分=(阈值-(不通过的检核数*100/总检核数))*100/阈值。 如果质量分数<0,则置为0分,即稽核结果不满足质量标准。  | 
| 稽核类型 | 实体类型为事实表,存储规则为分区或分表时配置此项。 当存储规则为分区时,可选值为: ∙整表稽核 ∙分区稽核 当实体类型为事实表,存储周期单位为日或月,存储规则为分表时,可选值为: ∙整表稽核 ∙分表稽核 当实体类型为事实表,存储周期单位为年,存储规则为分表时,可选值为:整表稽核。 当实体类型为其他表时,可选值为:整表稽核。 “整表稽核”指稽核全部分区或分表的数据,“分区稽核”指稽核部分分区的数据,“分表稽核”指稽核部分分表的数据。  | 
| 分区列 | 当“稽核类型”为“分区稽核”时,此参数有效。 选择此实体按照分区稽核的分区列。  | 
| 处理动作 | 数据质量超过阈值后触发的联动处理动作,可选值: ∙日志记录 ∙发送告警 日志记录是将此稽核结果计入日志“${HOME}/logs/debug/dam_debug.log”,格式形如: Data quality do not pass.checkActionId=8a2b02eb520a760f01520a8091100002,rule Id=2015123116344510000,LogicModel=TESTUSE,CheckRuleStatement=select count(*) from TEST USE where bbb < 20 or bbb > 1000 or bbb is null,Threshold=50,totalRecord=1,badRecord=1 ,score=0.0 发送告警是发送告警至DigitalView平台。  | 
| 质量标准 | 根据不同的质量规则,配置不同的质量标准: ∙当“质量规则”为“有效性”时,可以配置模型中各字段的码表类型、长度区间、是否可空、是否唯一。 ∙当“质量规则”为“一致性”时,可以配置模型的稽核对象字段、参照模型和参照字段。 ∙当“质量规则”为“准确性”时,可以选择为“环比波动率”或“同比波动率”。 说明: 当实体类型为事实表,存储周期单位为年,存储规则为分表时,质量标准只能选择“环比波动率”。  | 
| 有效性 | |
| 码表类型 | 可选值为已在码表管理中定义过的码表类型。码表类型定义请参见配置码表(查看 [标题编号])。 | 
| 指定数值区间 | 约束此字段的数值最小值和数值最大值。 | 
| 长度区间 | 约束此字段的长度最小值和长度最大值。 | 
| 不可空 | 约束此字段是否不可以为空。 | 
| 唯一 | 约束此字段是否唯一。 | 
| 一致性 | |
| 稽核对象字段 | 当“质量规则”为“一致性”时,此参数有效。 质量标准所约束的字段。  | 
| 参照模型 | “质量规则”为“一致性”时配置此项。 与配置项中的“稽核对象字段”做一致性对照的字段所属的数据模型。  | 
| 参照字段 | “质量规则”为“一致性”时配置此项。 与配置项中的“稽核对象字段”做一致性对照的字段。  | 
| 准确性 | |
| 环比波动率 | 环比波动率是指和上一时期相比的波动率。例如:2015.4和2015.3进行比较,2015年和2014年进行比较。 环比波动率计算公式:环比波动率=(本期数值-上期数值)/上期数值*100%  | 
| 同比波动率 | 同比波动率是指和历史同期相比的波动率。例如:2015.4和2014.4相比(同比周期为“年”),2015.8.18和2015.7.18相比(同比周期为“月”)。 同比波动率计算公式:同比波动率=(本期数值-同期数值)/同期数值*100%  | 
| 自定义SQL 说明: 为兼容之前版本,从C30之前版本升级到C30版本后,仍可以查看原版本的自定义规则功能,但不支持对其进行编辑。  | |
| 质量规则名称 | 用户定义的质量规则名称,供在USE上展示。 | 
| 计算方式 | 有以下三种计算公式供选择: ∙A/B ∙|A-B|/B ∙|A-B| 其中“A”指“值A”返回的结果、“B”指“值B”返回的结果。允许值A和值B直接输入常量值,但不允许值A和值B同时为常量值。常量值范围要求必须为有效数字0-9组成或包含小数点。  | 
| 阈值 | 设置阈值。用于与“计算方式”计算出来的结果相比较,以判定稽核结果是否满足质量标准。 ∙计算方式选择A/B,或者不选择任何计算方式: 如果A>=0 并且B>0,按如下方式判断阈值,否则无需计算质量得分。 ▪阈值为0,(A/B)!=0时,质量得分为0分,否则质量得分为100分。 ▪阈值不为0,(A/B)*100>阈值,质量得分为0分。否则质量得分=(阈值-(A/B)*100)*100/阈值。 ∙计算方式选择|A-B|/|B|: 若B=0时:当A=0时,质量得分为0分,否则质量得分为-1。 ▪阈值为0:|A-B|/|B|!=0时,质量得分为0分,否则质量得分为100分。 ▪阈值不为0:(|A-B|/|B|)*100>阈值时,质量得分为0分,否则质量得分=(阈值-(|A-B|/|B|)*100)*100/阈值。 ∙计算方式选择|A-B|时: ▪阈值为0:|A-B|!=0时,质量得分为0分;|A-B|=0时,质量得分为100分。 ▪阈值不为0:|A-B|>阈值时,质量得分为0分;否则质量得分=(阈值-|A-B|)*100/阈值。 如果计算出来的质量得分>100分时,直接返回0分。 根据计算规则公式计算出来的值和阈值比较,得分范围为[0,100],如果质量分数<0,则置为0分,即稽核结果不满足质量标准。  | 
| 值A/值B | 填写自定义SQL语句。 允许值A和值B直接输入常量值,但不允许值A和值B同时为常量值。常量值范围要求必须为有效数字0-9组成或包含小数点。 说明: 稽核语句仅允许由“可用模型”、“有效字段”、“系统函数”、“系统参数”、“操作符”和“常量”组成。 ∙可用模型:从配置页面的“模型实体名”列表中选取。 ∙有效字段:从配置页面的“字段名称”列表中选取。 ∙系统函数:从配置页面的“函数名”列表中选取。函数说明请参见自定义SQL参考函数(查看 [标题编号])。 ∙系统参数:从配置页面的“系统参数”列表中选取。事实表的SQL语句必须包含系统参数。 ∙操作符:手动输入。 【示例】假设数据模型中存在QR_NAME字段,则要求QR_NAME字段长度大于0的检核语句写法如下:length(QR_NAME)>0  | 
5.单击“提交”,提交模型变更给审核人员审核。
6.审核人员在“数据治理 > 数据管控 > 数据模型 > 模型审核”中审核变更信息。
审核完成后,可以在后续的USE中进行稽核任务的编排。
1.7.3 配置和执行稽核任务
1.选择“数据治理 > 统一调度 > 调度配置 > 任务编排”。
2.创建控制流。
a.右键“流程包”,选择“新建包”菜单。
b.配置包的名称和描述,单击“保存”按钮。
c.右键上一步新建的流程包,选择“新建控制流”菜单。
d.配置控制流的名称和描述,单击“保存”按钮。
3.配置控制流。
a.新增一个“业务任务”,双击打开其编辑窗口。
b.从“任务平台”的下拉列表中选择已配置的DAM集群。单击“选择任务”按钮。
弹出“选择执行任务”窗口,如下图所示。
图1 选择执行任务
c.单击“查询”按钮,查询可选的任务。从查询结果中选择已配置的质量规则,点“确定”(由于在配置数据质量规则之后,DG后台会自动向统一调度上报稽核任务信息,因此此处可查询到)。
4.在线测试。
a.在流程编辑页面的工具栏中单击按钮。
b.(可选,配置数据质量规则时“稽核类型”为“分区稽核”或“分表稽核”时执行本步骤)在弹出的“在线测试”页面中单击编辑参数,设置开始数据时间和结束数据时间,如图2所示。
图2 设置开始数据时间
∙示例流程为月表,时间精确到月即可。
∙如果调测的流程为日表,开始数据时间和结束数据时间精确到天如20160101;
∙如果调测流程为小时表,开始数据时间和结束数据时间精确到小时如2016010101。
c.在“在线测试”页面中单击按钮,开始执行流程。
执行成功的节点将在右下角显示,执行出错的节点显示告警标示,执行失败的节点显示。单击执行失败的节点可以查看失败错误信息。当不选中任何节点时,可以在“输出数据信息”中查看流程执行日志。
5.发布。
在流程包导航树中选中,右键单击“发布”。
6.配置调度时间。
请参考设置任务调度时间(查看 [标题编号])配置调度时间。
1.7.4 实时监控数据质量
数据质量监控页面展示了最近若干次质量稽核情况,用于实时监控数据质量,及时发现质量问题。
前提条件
已登录DG前台。
已配置质量稽核规则。
已在USE中已创建并运行了质量稽核调度任务。
操作步骤
1.选择“数据治理 > 数据管控 > 数据质量 > 数据质量监控”。
进入质量监控页面,如图1所示。
图1 数据质量监控
页面主要分三部分:
∙质量维度
▪以不同颜色代表质量的有效性、一致性、准确性和自定义等检核维度的质量规则。
▪色块大小代表此维度存在的质量问题的数量。
∙分层数据质量详情
▪显示处于同一层级的分层信息。
▪方块面积代表数据模型数量。
▪方块颜色代表质量得分,颜色越红分数越低。
▪双击某分层色块,则向下钻取该数据分层,单击图表上方分层钮返回上层。
∙质量监控状态
▪展示实体各个稽核规则的检核情况。
2.查看质量监控状态
a.单击“质量维度”的某个维度,或单击“分层数据质量详情”的某个分层,则此处显示对应的数据实体质量状况。
b.单击某实体所在的行,可显示详细的稽核结果,如图2所示。
图2 质量监控状态
c.单击某稽核规则(如图2中红框中的按钮所示),切换不同稽核规则的检核结果。
1.7.5 分析数据质量趋势
以曲线图方式展示数据质量趋势,并可提供详细的实体质量信息。
前提条件
已登录DG前台。
已配置质量稽核规则。
已在USE中已创建并运行了质量稽核调度任务。
操作步骤
1.选择“数据治理 > 数据管控 > 数据质量 > 数据质量分析”。
进入质量报告查看页面,如图1所示。
图1 质量报告
页面分为三个部分:
∙数据质量趋势
以时间为横坐标,以质量得分为纵坐标,从有效性、一致性、准确性和自定义等维度展示质量趋势。
∙分层数据质量详情
从各个维度分别展示数据分层当天的数据质量,支持数据分层的钻取。
∙质量报告详情
提供具体实体的质量报告详情。
2.查看数据质量趋势
可进行的操作包括:
∙移动鼠标至图表上,界面可显示当前时间维的数据质量。
∙可调整时间显示范围,步骤如下:
a.选择“起始时间”,“结束时间”,并单击“刷新”按钮。
b.拖动图形下方两端的控制块,对时间范围进行微调。
∙双击数据质量趋势中的节点,“查看分层数据质量详情”切换到该时间点进行展示。
3.查看分层数据质量详情
a.双击某个分层
∙若该分层存在子层,则进入子层,如图2所示。
进入子层后,可单击图表上方的分层返回上层。
图2 分层数据质量详情
∙无论该分层是否存在子层,“质量报告详情”都会显示该层下各个实体的数据质量报告。
4.查看质量报告详情
单击某实体所在的行,可显示详细的稽核规则信息,如图3所示。
图3 质量报告详情
1.7.6 管理数据质量知识库
提供图形化界面将生产运维过程产生的问题、人员报告数据质量问题、维护发现的问题、业务人员反馈的问题经过处理过程转到知识库,对问题的原因和解决方法进行分类记录,实现历史经验沉淀和查询。
前提条件
已登录DG前台。
已创建相关质量稽核规则。
操作步骤
1.向知识库添加记录。
a.选择“数据治理 > 数据管控 > 数据质量 > 数据质量分析”。
b.在“分层数据质量详情”中双击打开存在质量问题的逻辑模型所在的数据分层。
c.在“质量报告详情”单击需要添加知识库信息的逻辑模型。
d.单击实体右侧的“新增解决方法”按钮。
弹出新增质量知识库信息窗口,如图1所示。
图1 新增质量知识库信息
e.配置知识库信息。
填写“问题原因”、“解决方法”、“关键字”信息,单击“保存”。
其中“关键字”信息作为后面查询知识库的关键字。
2.查询知识库信息。
a.选择“数据治理 > 数据管控 > 数据质量 > 数据质量知识库”。
进入“数据质量知识库”页面,如图2所示。
图2 知识库查询
b.填写查询条件,单击“查询”。
支持按日期、数据分层、逻辑模型、质量标准类型和关键字进行查询。
“查询结果”中显示符合条件的知识库记录列表,每条记录信息包括:逻辑模型、逻辑模型所属的数据分层、存在问题的质量维度、问题原因、解决方法、最后修改人和最后修改时间。
3.(可选)编辑或删除知识库信息。
通过单击知识库信息右侧的或按钮编辑或删除知识库信息。
1.7.7 任务示例
本章节以“用户日表”中“用户标识”字段的唯一性检查为例,介绍数据质量管理的完整流程。
前提条件
已配置了“用户日表”数据模型,实体类型为“日统计表”,存储规则中“统计日期”为分区列,按天分区。
操作步骤
1.配置数据质量规则。
选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”,进入数据模型配置页面,在左侧导航中选择需要配置质量规则的数据模型,单击右侧的“编辑”。单击“质量规则”页签,单击“新建稽核规则”,为数据模型配置质量规则,如图1所示。
图1 配置数据质量规则
2.编排质量稽核任务。
a.添加稽核任务。
选择“数据治理 > 统一调度 > 调度配置 > 任务编排”,进入任务编排页面,添加质量稽核任务,如图2所示。
图2 配置质量稽核任务
b.测试任务。
测试该质量稽核任务,如果数据实体按分区或分表稽核,需要配置“数据开始时间”和“数据结束时间”,如图3所示。
图3 在线测试
c.发布任务。
d.设置调度时间。
图4 设置调度时间
3.监控数据质量。
选择“数据治理 > 数据管控 > 数据质量 > 数据质量监控”,如图5所示。
图5 数据质量监控
4.分析数据质量趋势。
选择“数据治理 > 数据管控 > 数据质量 > 数据质量分析”,如图6所示。
图6 数据质量趋势分析
5.管理数据质量知识库。
a.在“数据治理 > 数据管控 > 数据质量 > 数据质量分析”页面单击“新增解决办法”。
在弹出的页面输入解决办法,该解决办法即加入了知识库。
图7 新增解决办法
b.选择“数据治理 > 数据管控 > 数据质量 > 数据质量知识库”,可查询知识库信息,如图8所示。
图8 查询知识库
1.8 参考
∙检核语句说明(查看 [标题编号])
本章节介绍数据分层标准、模型设计标准检核语句相关的操作符和系统函数。
∙自定义SQL参考函数(查看 [标题编号])
本章节介绍数据质量标准自定义SQL语句相关的系统函数。
∙模型配置参数(查看 [标题编号])
本章节介绍配置数据模型过程中涉及的参数。
∙存储周期配置说明(查看 [标题编号])
配置数据模型时,可以配置数据的存储周期,
1.8.1 检核语句说明
1.8.2 自定义SQL参考函数
本章节介绍数据质量标准自定义SQL语句相关的系统函数。
自定义SQL支持的系统函数如表1所示。
| 表1 内置预定义函数 | |
| 函数 | 说明 | 
| abs(Short/Integer/Long/Float/Double) | [功能] 求一个参数的绝对值。 [参数] 参数类型可以为Short、Integer、Long、Float、Double。 [返回值] 如果参数为null,返回null,否则返回参数对应的绝对值。 [示例] abs(1)返回1,abs(-1)返回“1”。  | 
| ascii(String) | [功能] 求字符串首字母的ASCII码值。 [参数] 参数是一个字符串。 [返回值] 如果参数为null或空串,返回0,否则返回字符对应的ASCII码。 [示例] ascii("a")返回“97”。  | 
| avg(String) | [功能] 对参数所在列的值求平均值。 [参数] String。 [返回值] Double。 [示例] SELECT AVG(column_name) FROM table_name;  | 
| ceil(Float/Double) | [功能] 求不小于指定参数的最小整数值。 [参数] 参数类型可以为Float、Double。 [返回值] 如果参数为null,返回null,否则返回Double。 [示例] ceil(-10.0)返回值为“-10.0”,ceil(-2.4)返回值为“-2.0”。  | 
| concat(string,String,String...) | [功能] 将所有参数合成一个参数,并忽略其中的空值。 [参数] 参数类型可以为String。 [返回值] String。 [示例] concat('abcde', 2, NULL, 22)返回值“abcde222”。  | 
| concat_ws(string,String,String...) | [功能] 将所有参数按照第一个参数的分隔符进行分离,并忽略其中的空值。 [参数] 参数类型可以为String。 [返回值] String。 [示例] concat_ws(',', 'abcde', 2, NULL, 22)返回值“abcde,2,22”。  | 
| count(String) | [功能] 对参数所在列的值计数。 [参数] String。 [返回值] Integer。 [示例] SELECT COUNT(column_name) FROM table_name;  | 
| degrees(Double) | [功能] 将弧度转为角度。 [参数] 参数类型为Double。 [返回值] 如果参数为null,返回null,否则返回Double。 [示例] degrees(0.5)返回值为“28.787565412”。  | 
| exp(Double) | [功能] 求指定参数的自然指数。 [参数] 参数类型可以为Double。 [返回值] 如果参数为null,返回null,否则返回Double。 [示例] exp(1.0)返回值为2.71828182845905。  | 
| lower(String) | [功能] 将字符串中的大写字母都转换成小写字母。 [参数] 参数是一个字符串。 [返回值] 如果参数为null,返回null,否则返回String。 [示例] lower("aBc")返回“abc”。  | 
| max(String) | [功能] 对参数所在列的值求最大值。 [参数] String。 [返回值] Integer。 [示例] SELECT MAX(column_name) FROM table_name;  | 
| min(String) | [功能] 对参数所在列的值求最小值。 [参数] String。 [返回值] Integer。 [示例] SELECT MAX(column_name) FROM table_name;  | 
| mod(Integer,Integer) | [功能] 将参数1对参数2取余数。 [参数] Integer。 [返回值] Integer。 [示例] mod(9,4)返回“1”。  | 
| pi() | [功能] 求"π"常量。 [参数] 无。 [返回值] 返回"π"常量的值。 [示例] pi()返回“3.141592653579”。  | 
| power(Double,Double) | [功能] 求参数1的参数2次幂。 [参数] 参数类型可为Short、Integer、Long。 [返回值] Double。 [示例] power(9.0, 3.0)返回“729”。  | 
| random() | [功能] 求0.0到1.0之间的随机数值。 [参数] 无。 [返回值] 如果参数为null,返回null,否则返回Double。 [示例] random()。  | 
| repeat(String, Integer) | [功能] 将参数1重复参数2次。 [参数] String和Integer。 [返回值] String。 [示例] repeat('Pg', 4)返回“PgPgPgPg”。  | 
| reverse(String) | [功能] 将参数字符串反转。 [参数] String。 [返回值] String。 [示例] reverse('hello,world')返回“dlrow,olleh”。  | 
| sqrt(Short/Integer/Long/Float/Double) | [功能] 求平方根。 [参数] 参数类型可为Short、Integer、Long、Float、Double。 [返回值] Double。 [示例] sqrt(2.0)返回“1.4142135623731”。  | 
| substr(String, Integer, Integer) | [功能] 从参数1中截取字符串,从参数2(包含)开始截取到参数3(不包含)。 [参数] 第一个参数是字符串,第二个参数是截取子串的开始位置(包含),第三个参数是截取子串的结束位置(不包含)。 [返回值] 如果参数1为null,返回null,否则返回String。 [示例] substr("welcome", 2, 4)返回“lc”。  | 
| substring(String [from Integer] [for Integer]) | [功能] 抽取子字串。 [参数] String。 [返回值] String。 [示例] substring('Thomas' from 2 for 3)返回“hom”。  | 
| sum(String) | [功能] 对参数所在列的值求和。 [参数] String。 [返回值] Integer。 [示例] SELECT SUM(column_name) FROM table_name;  | 
| translate(string text, from text, to text) | [功能] 以第三个参数替换第一个参数中所出现第二个参数,并返回替换后的母字符串。translate函数是replace方法的一个超集。如果匹配字符串长度小于替换字符串,则取替换字符串前N个字符,舍弃N+1以后的字符。例如:Translate('abcdefghij','abc','12356')的结果为:'123defghij',而replace('abcdefghij','abc','12356')的结果为:'12356defghij'。 [参数] 第一个参数是被替换主串,第二个参数是匹配字符串,第三个参数是替换字符串。 [返回值] 如果参数1为null,则返回null,否则返回String。 [示例] translate("abcdefghij“123defghij”。  | 
| upper(String) | [功能] 将字符串中的小写字母都转换成大写字母。 [参数] 一个字符串。 [返回值]如果参数为null,则返回null,否则返回String。 [示例] upper("hello")返回“HELLO”。  | 
1.8.3 模型配置参数
本章节介绍配置数据模型过程中涉及的参数。
基本信息
| 表1 模型基本信息 | |
| 参数 | 参数解释 | 
| 业务名称 | 数据模型的名称。 | 
| 实体名称 | 实体的名称,以字母或下划线开头,其余为字母、数字或下划线。 说明: 实体名称不能使用数据库关键字。  | 
| 实体类型 | 此数据模型对应的实体的表类型,包含以下类型: ∙普通表 ∙事实表 ∙普通维度表 ∙维表拉链表:用于处理缓慢变化维数据。缓慢变化维的维度属性不是静态的,它会随时间发生缓慢的变化。 维表拉链表需要额外配置“生效时间”和“失效时间”两个字段。 ∙临时表 在Universe大数据分析平台中创建的临时表,需要在数据治理中建立模型,可自动创建物理表,该元数据可被数据集成过程、UADP、UAOP使用。 跟普通表的唯一区别是:临时表不属于数据资产,无需注册到第三方的数据资产管理系统。 ∙外部表 Universe大数据分析平台上游或下游的表,该类数据模型所对应的物理数据表或文件并未存储在大数据平台中。该元数据只能被数据集成过程使用,不能被UADP、UAOP所使用。 跟普通表的区别:不需要创建对应的物理实体,不属于数据资产,无需注册到第三方的数据资产管理系统。  | 
| 存储周期单位 | 当实体类型为事实表时生效。配置此数据模型的存储周期的单位。包括以下选项: ∙无:表示此数据模型不按照存储周期老化,会一直保存下去。 ∙年、月、日、小时:存储周期的单位。  | 
| 存储周期 | 当实体类型为事实表时生效。配置数据模型的存储周期,与“存储周期单位”配合使用。超过此存储周期的数据将会被自动删除。 存储周期相关的说明,请参见存储周期配置说明(查看 [标题编号])。  | 
| 维度失效时间 | 当实体类型为维表拉链表时生效。超过此时间该维表将失效。 | 
| 私有的逻辑实体(元数据不对外开放) | 此数据模型是否开放,提供给UAOP支持数据开放服务。不选中表示开放给UAOP。 | 
| 描述 | 此模型的描述信息。 | 
数据模型的数据结构参数如表2所示。
| 表2 数据结构参数说明 | |
| 参数 | 解释 | 
| 业务名称 | 填写为业务角度的字段名称。 | 
| 属性名称 | 存储到数据源中的字段名,必须为英文。 说明: 属性名称不能使用数据库关键字。  | 
| 类型 | 字段类型。 | 
| 长度 | 字段长度,字段类型为“通用类型(String)”时需要手动填写。 | 
| 精度 | 字段精度,供浮点型数据后台处理用,无需手动填写。 | 
| 格式 | 字段格式,字段类型为“通用类型(日期)”时使用,可从下拉框中选择或手动编辑。 | 
| 是否可空 | 字段是否可以为空。 | 
| 类型标识 | 字段类型标识,供域和特征管理使用。 | 
| 描述 | 字段描述信息。 | 
数据模型的存储规则参数如表3所示。
| 表3 存储规则参数说明 | |||
| 参数 | 解释 | ||
| 分区/分表 | 只有事实表支持进行分区或分表。当“实体类型”为“事实表”,且设置了存储周期时(存储周期为“小时”时,只支持选择“分区”),此参数生效。 支持分区的数据源:Hadoop的HIVE、RDB的Oracle、Vertica。针对HDFS数据源,无论选择分区还是分表,系统都会将其作为分表进行处理。  | ||
| 分区列 | 当选择“分区”时,需要设置分区列。 从下拉菜单中选择用于分区的列。 说明: 加密字段不能作为分区字段,分区字段也不可以做加密设置。  | ||
| 存储周期 | 配置当前数据源的数据存储周期,超过此周期的数据将被删除。此数据周期小于在“逻辑实体信息”中配置的数据模型的存储周期。 说明: 由于目前仅支持单数据源,存储周期执行老化采用数据源的存储周期执行。 1、如果字段类型为“通用类型(string)”,需要选择格式为“年”、“年/月”、“年/月/日”或“年/月/日/时”才可以进行老化。 2、老化最多只能针对一个字段。 存储周期相关的说明,请参见存储周期配置说明(查看 [标题编号])。  | ||
| 数据源类型 | 数据治理支持的数据源包含两种类型: ∙Hadoop数据源:支持HDFS和Hive。 ∙RDB数据源:支持Oracle、Vertica、DB2、Greenplum(仅需指定数据源,无需配置其他参数)和GBase(仅需指定数据源,无需配置其他参数)。  | ||
| 数据源 | 根据数据源类型,选择对应的数据源存储此数据模型的物理模型。 默认值展示前5条数据源,可以单击右侧的“更多”,搜索或选择此数据源类型下的其他数据源。  | ||
| Hadoop数据源详细配置 | 参见表4。 | ||
| RDB数据源详细配置 | 参见表5。 | ||
| 表4 Hadoop数据源主要参数配置说明 | |||
| 参数 | 参数解释 | ||
| 【公共信息】 | |||
| 存储形态 | 存储形态包括: ∙HDFS:支持设置存储的文件的格式。 ∙HIVE:支持设置分区和分桶信息。  | ||
| 集群用户 | 选择Hadoop集群的用户。 | ||
| 【存储详细配置】 | |||
| 物理模型名称 | 此数据模型对应的物理模型的名称。物理模型的名称会自动生成,一般情况下可以直接采用默认值。 说明: 物理模型名称在初始配置时会根据当前的配置给出默认值,若后续修改配置项(如存储周期从月存储变更为年存储),物理模型名称不会自动刷新,需要手动修改。  | ||
| 【分区和分桶信息(HIVE数据源需要设置)】 | |||
| 分区 | 设置数据模型的对应列是否分区。 | ||
| 分桶 | 设置数据模型的对应列是否分桶。 | ||
| 分桶数 | 设置分桶的数量。 | ||
| 【文件信息】 | ||
| 文件类型 | 根据不同的数据源,需要设置不同的文件类型: ∙HDFS:支持TXT和XML两种格式的文件。 ∙HIVE 可选值为: ▪Text File:文本格式。 ▪ORC File:Hive推出的一种专门面向列的数据格式。 ▪Sequence File:Sequence File是Hadoop API 提供的一种二进制文件,它将数据以  | |
| 文件名称 | 自动生成,缺省值:实体名称.文件类型。 | |
| 文件路径 | 文件路径。只读,值为: $HOME/分层名称/数据实体名称/ | |
| 文件编码 | 可选编码类型: ∙UTF-8 ∙ASCII ∙ISO-8859-1 ∙GBK  | |
| 【格式设置(TXT格式需要设置)】 | ||
| 压缩方式 | 可选方式: ∙未压缩 ∙.gz ∙Snappy Snappy和gz方式相比,Snappy的压缩率低,CPU消耗小,压缩和解压速度快。gz方式的压缩率高,但是CPU消耗大,压缩和解压速度慢。  | |
| 文件格式 | 不同格式的文件需要配置的参数有所不同。可选格式: ∙列分隔文件:使用指定分隔符分隔各列的文件。 需要设置分隔符、解析方式、文件头行数和文件尾行数。 ∙定长格式文件:各列的长度是固定的。需要设置文件头行数、文件尾行数和列宽。 ∙名-值对文件:使用指定名值对分隔符分隔列名和对应的值的文件。需要设置分隔符、名值对分隔符、解析方式、文件头行数和文件尾行数。  | |
| 分隔符 | 分隔符的配置: ∙支持所有ASCII码 ∙首尾不能是空格 ∙不能为空 ∙ASCII码中可见字符直接输入 ∙ASCII码中不可见字符可以用\\\\X0F这种形式表示 ∙最多支持5个ASCII字符 说明: 分隔符中如果需要使用转义字符表示特殊字符,请使用“\\\\”表示转义字符,而不是“\\”。例如,以tab键作为分隔符,则分隔符配置为“\\\”,或以ASCII码表示“\\\\X09”。 如果需要以空格为分隔符,请以ASCII码表示,即“\\\\X20”。  | |
| 名值对分隔符 | 名-值对文件需要设置此参数。表示参数名和参数值之间的分隔符,缺省值为半角冒号(“:”)。 | |
| 解析方式 | 列分隔符文件和名-值对文件需要设置。包括: ∙无 ∙单引号 ∙双引号 指对应的值不带单引号、带单引号或双引号。  | |
| 文件头行数 | 文件头包含的行数。若没有文件头,填写0。 | |
| 文件尾行数 | 文件尾包含的行数。若没有文件尾,填写0。 | |
| 列宽设置 | 定长格式文件需要配置此配置项。设置每个字段的列宽。 | |
| 【节点路径设置(XML格式需要设置)】 | ||
| 节点路径 | 为每列设置存储路径。 支持复制/粘贴操作。  | |
| 表5 RDB数据源参数配置说明 | |
| 参数 | 参数解释 | 
| 【存储详细配置】 | |
| 物理模型名称 | 此数据模型对应的物理模型的名称。物理模型的名称会自动生成,一般情况下可以直接采用默认值。 说明: 物理模型名称在初始配置时会根据当前的配置给出默认值,若后续修改配置项(如存储周期从月存储变更为年存储),物理模型名称不会自动刷新,需要手动修改。  | 
| 分区类型 | 当需要进行分区时,需要设置此参数。包括: ∙范围-列表分区:根据分区列以及分区列值的范围进行分区。 ∙列表分区:直接根据分区列进行分区。  | 
| 【分区设置】 | |
| 分区列 | 从下拉菜单中选择用于分区的列。 | 
| 分区前缀 | 当进行列表分区时,直接设置分区的前缀。分区前缀用作分区的键值。 | 
| 分区名称 | 当进行范围-列表分区时,需要设置分区名称和分区范围,并需要设置子分区的前缀。设置分区的名称。单击“新增”添加多个分区名称。 | 
| 分区范围 | 配置为列值。以配置的列值为分界点划分分区区间。 示例:10  | 
| 【子分区设置(范围-列表分区需要设置)】 | |
| 分区列 | 系统根据分区列自动设置。 | 
| 主分区名称 | 单击“新增”,双击主分区名称的空白区域,在下拉菜单中选择“分区设置”中添加的分区名称。 | 
| 子分区前缀 | 设置子分区的前缀。分区前缀用作分区的键值。 | 
配置数据模型时,可以配置数据的存储周期,
存储周期和数据老化说明
数据老化指删除数据库中超过存储时长的数据。
在DG中新建或修改数据模型时,如果数据模型的实体为事实表,可以设置数据的存储周期。当设置成功并开启数据老化的开关后,超过此存储周期的数据会被系统自动删除。这样保证不需要的历史数据能够定时删除,保证数据的正常存储。
开启方法
说明:
设置了存储周期并开启数据老化开关后,超过此周期的数据会被系统自动删除,请根据现场实际情况,谨慎配置。
数据老化开关,需要通过修改DG的配置文件配置。修改“${HOME}/conf/dg.config.properties”配置文件中修改“dg.model.aging”配置项的值。取值及含义如下:
∙true:开启数据老化
∙false:关闭数据老化
若“${HOME}/conf/dg.config.properties”中没有此配置项,可以新增此配置项。
dg.model.aging=true
设置方法
开启数据老化开关后,在新建数据模型时,可以设置存储周期。设置方法如下:
1.登录DG后台服务器主机(若为集群,则每一台主机上都需要执行此操作),修改“${HOME}/conf/dg.config.properties”配置文件中修改“dg.model.aging”配置项的值为“true”后,重启DG。
若“${HOME}/conf/dg.config.properties”中没有此配置项,可以新增此配置项。
dg.model.aging=true
2.登录Universe大数据分析平台统一Portal界面,选择“数据治理 > 数据管控 > 数据模型 > 数据模型管理”。
3.右键单击“模型管理”下属的某一层名称,选择“新建逻辑实体”。
4.设置模型的存储周期。
此时,可以设置模型的存储周期。设置此存储周期后,后续在设置数据源的存储周期时,必须在此范围内。示例如图1所示。
图1 设置模型的存储周期
5.设置数据源的存储周期。
单击“下一步”设置数据结构后,单击“下一步”,设置数据源的存储规则。此时设置的存储周期,是在此数据源上的数据的存储周期。示例如图2所示。
图2 设置数据源的存储周期
6.单击“下一步”,设置稽核规则后,单击“保存”。
2. Addenda
2.1 设置任务调度时间
2.2 集群管理
