新建事实表
归属于某个业务过程的事实逻辑表,可以丰富具体业务过程所对应事务的详细信息。创建事实逻辑表即完成公共的事务明细数据沉淀,从而便于提取业务中事务相关的明细数据。
新建事实表并发布
- 在DataArts Studio控制台首页,选择对应工作空间的“数据架构”模块,进入数据架构页面。
- 在数据架构控制台,单击左侧导航树中的“模型设计 > 维度建模”,选择“事实表”页签。
- 在左侧主题树中选中一个主题,然后单击“新建”按钮,或者直接单击“新建”按钮。
- 在“新建事实表”页面,完成如下配置:
- 设置“基本配置”参数:
图1 事实表基本配置
表1 基本配置参数说明 参数名称
说明
*所属主题
单击“选择主题”,选择表所属的主题域分组、主题域和业务对象。
*表名称
只允许除\、<、>、%、"、'、;及换行符以外的字符。
*表英文名称
只能以fact_开头,支持英文字母、数字、下划线。
*数据连接类型
在下拉框中选择对应的数据连接类型。
*数据连接
在下拉框中选择对应的数据连接。维度建模建议使用统一的数据连接。
*数据库
在下拉框中选择对应的数据库。
队列
DLI队列。该参数仅DLI连接类型有效。
Schema
DWS或POSTGRESQL的模式。该参数在DWS或POSTGRESQL连接类型有效。
表类型
DLI模型的表支持以下表类型:- Managed:数据存储位置为DLI的表。
- External:数据存储位置为OBS的表。当“表类型”设置为External时,需设置“OBS路径””参数。OBS路径格式如:/bucket_name/filepath。
DWS模型的表支持以下表类型:
- DWS_ROW:行存表。行存储是指将表按行存储到硬盘分区上。
- DWS_COLUMN:列存表。列存储是指将表按列存储到硬盘分区上。
- DWS_VIEW:视图存表。视图存储是指将表按视图存储到硬盘分区上。
MRS_HIVE模型支持HIVE_TABLE和HIVE_EXTERNAL_TABLE。
MRS_SPARK模型支持HUDI_COW和HUDI_MOR。
POSTGRESQL模型仅支持POSTGRESQL_TABLE。
MRS_CLICKHOUSE模型仅支持CLICKHOUSE_TABLE。
Oracle模型仅支持ORACLE_TABLE。
MySQL模型仅支持MYSQL_TABLE。
DORIS模型仅支持DORIS_TABLE。
压缩等级
当数据连接类型为DWS时,可选择压缩等级,以减少数据存储成本。
不同表类型可选以下压缩等级:
- DWS_ROW:“NO”、“YES”。
- DWS_COLUMN:“NO”、“LOW”、“MIDDLE”、“HIGH”。
- DWS_VIEW:不支持设置压缩等级。
DISTRIBUTE BY
该参数仅DWS连接类型有效,为非必选项。您需要先添加表字段,才能在此下拉列表中选择某一个表字段作为DISTRIBUTE BY字段,可选取多个字段。
DWS表当前支持复制(Replication)和散列(Hash)两种分布策略。
- REPLICATION:在每一个DN节点上存储一份全量表数据。这种存储方式的优点是每个DN上都有此表的全量数据,在join操作中可以避免数据重分布操作,从而减小网络开销;缺点是每个DN都保留了表的完整数据,造成数据的冗余。一般情况下只有较小的维度表才会定义为Replication表。
- HASH:采用这种分布方式,需要为用户表指定一个分布列(distribute key)。当插入一条记录时,系统会根据分布列的值进行hash运算后,将数据存储在对应的DN中。对于Hash分布表,在读/写数据时可以利用各个节点的IO资源,大大提升表的读/写速度。一般情况下大表(1000000条记录以上)定义为Hash表。
PreCombineField
该参数仅SPARK连接类型有效。
路径
该参数仅数据源为MRS_HIVE且表类型选择HIVE_EXTERNAL_TABLE时有效。
只支持英文字母、数字、左斜杠(/)、英文句号(.)、中划线(-)、下划线(_)、冒号(:)。
*资产责任人
根据下拉框选择对应的资产责任人,可以手动输入名字或直接选择已有的责任人。
高级配置
设置自定义项,以对表进行描述。自定义项设置完成后仅可用于在表详情中进行查看,无特殊需求时无需设置。
例如您需要标识该表的来源时,可以设置自定义项配置名为“来源”,值为对应的表来源信息。配置完成后可以在表详情中查看该信息。
*描述
描述信息。支持的长度1~600字符。
- 在“字段配置”区域,单击“新建”添加维度或度量字段。
- 选择新建“维度”字段,会弹出“选择维度”页面。选择一个维度(选择公共层空间数据或者选择本空间数据),选择维度建模的模型,可以勾选一个或多个已创建的维度表,单击“确定”后,会将所选维度的维度表及维度表的属性值字段添加到列表中。
- 选择新建“度量”字段,需要新建度量字段。
字段配置参数请参见表2。字段配置完成后,单击字段后的或可以调整字段的顺序。图2 配置维度或度量字段
表2 字段配置参数 参数名称
说明
类型
包含度量和维度两种类型。
字段名称
只允许除\、<、>、%、"、'、;及换行符以外的字符。
维度属性的字段会自动显示所添加的维度表及维度表的属性值字段,一般不需要修改。
字段英文名称
只能以英文字母开头,支持英文字母、数字、下划线。
数据类型
显示该维度的数据类型。
主键
选中时表示该字段为主键。
说明:数据连接为MRS Spark连接(通过MRS Spark连接支持MRS Hudi数据源)时,由于Hudi的限制,必须存在字段主键才能数据落库成功,否则会导致表同步失败。
分区
选中时表示该字段为分区字段。
不为空
是否限制该字段不为空。
关联数据标准
如果您已创建数据标准,在“数据标准”列,单击按钮可以选择一个数据标准与字段相关联。在 页面中的“模型设计业务流程步骤 > 创建质量作业”勾选的情况下,将字段关联数据标准后,表发布上线后,就会自动生成一个质量作业,每个关联了数据标准的字段会生成一个质量规则,基于数据标准对字段进行质量监控,您可以前往DataArts Studio数据质量模块的“质量作业”页面进行查看。
或者单击“从数据标准导入”,可以选择一个数据标准与字段相关联。
如果您还未创建数据标准,请参见新建数据标准进行创建。
密级
单击按钮可以为逻辑实体属性添加密级。
如果没有您想要的密级,可点击跳转到数据安全界面中创建需要的密级。
如不使用该功能,可在配置中心 > 模型设计中关闭该功能。
关联维度
只有维度属性的字段需要绑定维度,度量属性的字段不需要进行此操作。
显示当前关联的维度及字段名称。单击可以更换关联的维度。
若已开启公共层空间,支持选择公共层空间维度进行关联。
角色
只有维度属性的字段被添加多次时需要设置角色区分,度量属性的字段不需要进行此操作。
当同一个维度的相同字段被添加多次时,需要设置不同的角色来加以区分。
描述
描述信息。
稽核状态
表示是否进行数据标准稽核。
单击“数据标准稽核”,进行数据标准稽核。
操作
相关操作按钮。
- 在“映射配置”页签,单击“新建映射”,配置映射参数。
图3 配置映射
表3 映射参数 参数名称
说明
*映射名称
只能包含中文、英文字母、数字和下划线。
*来源模型
在下拉列表中选择一个已创建的关系模型。如果未创建关系模型,请参见关系建模进行创建。
*源表
选择数据来源的表,如果数据来源于一个模型中的多个表,可以单击表名后的按钮为该表和其他表之间设置JOIN。
- 选择一种“JOIN方式”,“JOIN方式”从左到右依次表示left JOIN、right JOIN、inner JOIN、outer JOIN。
- 在“JOIN字段”中设置JOIN条件,JOIN条件一般选择源表和JOIN表中含义相同的字段,单击或按钮增加或删除JOIN条件。JOIN条件之间是and的关系。
- 单击“确定”完成设置。
- 设置JOIN后,如果想删除JOIN表,单击所需删除的表名后的按钮就可以删除该JOIN表。
图4 JOIN条件
字段映射
为来源于当前映射的字段,依次选择一个含义相同的源字段。如果表字段来源于多个模型,您需要新建多个映射,每个映射中,您只需要为来源于当前映射的字段设置源字段,其他字段可以不设置。
- 设置“基本配置”参数:
- 单击“发布”,并在弹出框中,选择审核人,单击“确认提交”,提交事实表的发布审核。
企业模式下,进行发布时,可以选择发布到生产环境或开发环境。默认发布到生产环境,不勾选则无法发布。
如果当前用户已被添加为审核人,则可以勾选“自助审批”,单击“确认提交”后,状态显示为“已发布”。
选择审核人时,系统支持选择多个审核人,全部审批通过后,状态才会显示为已发布。如果有任意一个人驳回,则状态为已驳回。
- 等待审核人员审核事实表。
- 返回“维度建模 > 事实表”页面,在列表中找到刚发布的事实表,在“同步状态”一列中可以查看事实表的同步状态。您可以切换生产环境和开发环境查看同步结果。
- 如果同步状态均显示成功,则说明事实表发布成功,事实表在数据库中已创建成功。
- 如果同步状态中存在失败,可单击该事实表所在行的“更多 > 发布历史”,然后在展开的页面中进入“发布日志”页签查看日志。请根据错误日志定位失败原因,问题解决后,您可以在事实表页面勾选该事实表,再单击列表上方的“更多 > 同步”尝试重新同步。如果问题仍未能解决,请联系技术支持人员协助处理。
企业模式下,进行同步时,可以选择同步到生产环境或开发环境。默认同步到生产环境,不勾选则无法同步。
管理事实表
事实表创建好之后,进入数据架构的“维度建模 > 事实表”页面,您可以对事实表进行编辑、发布、下线、查看发布历史或删除操作。
- 编辑事实表
- 在事实表列表中,找到需要编辑的事实表,单击“编辑”,进入编辑事实表页面。
- 根据实际需要编辑相关内容。
- 单击“保存”,保存设置的信息;单击“发布”,发布设置的信息。
企业模式下,进行发布时,可以选择发布到生产环境或开发环境。默认发布到生产环境,不勾选则无法发布。
- 发布事实表
- 在事实表列表中,勾选需要发布的事实表,单击“发布”按钮,弹出“批量发布”对话框。
- 在下拉菜单中选择审核人。
企业模式下,进行发布时,可以选择发布到生产环境或开发环境。默认发布到生产环境,不勾选则无法发布。
- 单击“确认提交”。
- 查看发布历史
- 关联质量规则
- 在事实表列表中,勾选所需要的关联质量规则事实表,在上方单击“关联质量规则”,弹出“关联质量规则”对话框。
- 在“关联质量规则”对话框中,您可以批量给事实表的字段添加规则并关联到字段。
- 单击“确定”。
- 预览SQL
- 在事实表列表中,找到所需要的事实表,在右侧单击“更多 > 预览SQL”,弹出“预览SQL”对话框。
- 在“预览SQL”中,您可以查看SQL语句,也可以复制SQL。
- 创建指标
- 在事实表列表中,找到所需要的事实表,在右侧单击“更多 > 创建指标”,进入新建衍生指标页面。
- 新建衍生指标请参考新建衍生指标并发布。
- 下线事实表
- 在事实表列表中,勾选需要下线的事实表,单击“批量下线”对话框。 ,系统弹出
- 在下拉菜单中选择审核人。
- 单击“确认提交”。
- “下线”及“删除”事实逻辑表的前提是无依赖引用,例如事实表未被原子指标等使用时,才能进行删除操作。
- 删除事实表
如果您不再需要某一个事实表,您可以将它删除。当事实表处于发布审核中、已发布或下线审核中状态时,无法删除。
- 在事实表列表中,勾选需要删除的事实表,在列表上方选择“更多 > 删除”,系统弹出“删除”对话框。
- 单击“是”。
事实表关联质量规则
- 在数据架构控制台,选择 ,进入维度建模页面。
- 单击“事实表”页签,进入事实表页面。
- 在事实表列表中,勾选需要关联质量规则的事实表。单击“关联质量规则”。
图6 关联事实表质量规则
- 在弹出的页面中配置关联质量规则参数。配置完成单击确定。
- 更新已有规则:若勾选此项,新添加的规则会覆盖旧规则。
- 匹配字段:此参数默认应用于所有字段,依据用户输入的正则表达式对字段进行过滤。
- Where条件:可依据用户输入的where条件对字段进行过滤。
- 生成异常数据:开启此项,表示异常数据将按照配置的参数存储到规定的库中。
- 数据库或Schema:开启“生成异常数据”时显示此项,表示存储异常数据的数据库或Schema
- 表前缀:开启“生成异常数据”时显示此项,表示存储异常数据的表的前缀。
- 表后缀:开启“生成异常数据”时显示此项,表示存储异常数据的表的后缀。
- 添加规则:单击“添加规则”进行设置。例如,添加名称为“字段唯一值”规则,选中该规则后单击“确定”,在“告警条件”中输入告警条件表达式,然后按照此方法添加其他规则后,单击“确定”。
- 告警条件表达式,由告警参数和逻辑运算符组成。在质量作业运行时,系统将计算出告警条件表达式的结果,并根据表达式的结果是否为真来判断是否触发告警。如果表达式的结果为真则触发质量告警,结果为假则不触发质量告警。在此处的“关联质量规则”对话框中,每个质量规则的“告警参数”以按钮形式列出。
图7 事实表关联质量规则
事实表新建字段
- 在数据架构控制台,选择 ,进入维度建模页面。
- 单击“事实表”页签,进入事实表页面。
- 在事实表列表中,查找需要新建字段的表名称,单击其“编辑”,进入编辑页。
- 单击字段配置处的新建,在展开的下拉框选择新建字段类型,并配置相关参数。
图8 新建字段
- 配置完成后,单击“确定”,完成事实表新建字段。
事实表字段关联数据标准
- 在数据架构控制台,选择 ,进入维度建模页面。
- 单击“事实表”页签,进入事实表页面。
- 在事实表列表中,单击需要关联数据标准的事实表名称。
- 在事实表的详情页的表字段列表中,查找需要关联数据标准的字段,单击其所属的,配置单个表字段关联数据标准。数据标准的来源请参考新建数据标准
图9 事实表字段关联数据标准
- 配置完成后,单击“确定”,完成事实表字段关联数据标准。如果已开启公共层空间,在普通空间选择数据标准时,需要手动选择数据标准来源为“选择公共层”或“选择本空间”。“选择公共层”开启后,可以将公共层空间的数据标准引用到普通空间。
图10 设置数据标准
事实表字段单个关联质量规则
- 在数据架构控制台,选择 ,进入维度建模页面。
- 单击“事实表”页签,进入事实表页面。
- 在事实表列表中,单击需要关联质量规则的事实表名称。
- 在事实表的详情页的表字段列表中,单击,配置单个表字段关联质量规则。
图11 事实表单个字段关联质量规则
- 配置完成后,单击“确定”,完成事实表字段关联质量规则。
图12 添加事实表质量规则
事实表字段批量关联质量规则
- 在数据架构控制台,选择 ,进入维度建模页面。
- 单击“事实表”页签,进入事实表页面。
- 在事实表列表中,单击需要关联质量规则的事实表名称。
- 在事实表的详情页的表字段列表中,勾选需要关联质量规则的表字段,单击关联质量规则。
图13 事实表批量字段关联质量规则
- 在弹出的界面中添加规则,完成规则参数配置。
图14 规则配置页
- 配置完成后,单击“确定”,完成事实表字段批量关联质量规则。
通过逆向数据库导入事实表
通过逆向数据库,您可以从其他数据源中将一个或多个已创建的数据库表导入到事实表目录中,使其变成事实表。
- 在数据架构控制台,单击左侧导航树中的“维度建模”,进入维度建模页面。
- 在事实表的列表上方,单击“逆向数据库”。
- 在“逆向数据库”对话框中,配置如下参数,然后单击“确定”。
表4 逆向数据库配置 参数名称
说明
*所属主题
在下拉列表中选择所属主题。
*数据连接类型
在下拉列表中将显示逆向数据库支持的数据连接类型,请选择所需要的数据连接类型。
*数据连接
选择数据连接。
如需从其他数据源逆向数据库到事实表目录中,需要先在DataArts Studio管理中心创建一个数据连接,以便连接数据源。创建数据连接的操作,请参见配置DataArts Studio数据连接参数。
*数据库
选择数据库。
*Schema
下拉选择Schema。该参数仅DWS和POSTGRESQL模型的表有效。
队列
DLI队列。仅当“数据连接类型”选择“DLI”时,该参数有效。
更新已有表
如果从其他数据源逆向过来的表,在事实表中已存在同名的表,选择是否更新已有的事实表。
名称来源
逆向后表名称/字段名称的来源,可以是描述或者是相应英文名,如表/字段未指定描述则固定使用英文名。
- 来自描述
- 来自英文名称
*数据表
选择全部或部分需导入的数据表。
图15 逆向配置
- 逆向数据库的结果会在“上次逆向”页面中显示。如果逆向成功,单击“关闭”。如果逆向失败,您可以查看失败原因,问题解决后,选中失败的表,然后单击“重新逆向”进行重试。
图16 逆向结果
查看事实表详情
- 在数据架构控制台,选择 ,进入维度建模页面。
- 单击“事实表”页签,进入事实表页面。
- 单击事实表名称,进入事实表详情页面。
- 可以查看维度表基本信息和表字段信息。同时,您可以配置异常数据输出信息。
- 单击“编辑”按钮,并打开“生成异常数据”的开关。开启此项,表示异常数据将按照配置的参数存储到规定的库中。
- 输入数据库或Schema信息,表示存储异常数据的数据库或Schema。
- 设置异常表的表前缀和表后缀,表示存储异常数据的表前缀和后缀。
异常表的前后和后缀只能包含英文字母、数字和下划线。
- 配置好以后,单击保存异常数据配置信息。
- 系统支持配置where表达式,可依据用户输入的where条件对字段进行过滤。