文章目录
元数据管理系统设计
1. 数据表管理模块
数据表信息维护需要如下信息:
-
表的元数据信息(引擎、字段等)
-
表类型(维表或事实表)
-
表的使用情况(是否被模型使用)
-
表对应的ETL
-
描述信息
-
表的所有人
-
表的建表语句
2. 模型管理模块
模型分为 数据表模型 和 SQL模型
2.1 数据表模型管理
需要维护如下信息:
-
事实表名称(必填)
-
备注信息
关联配置
- 主数据表(表名)
- 关联方式(join、left join、semi join)
- 关联表
- 关联字段(关联字段,关联关系(=,<,>))
- 关联限制(限制字段,限制关系,限制值)
- 模型ER图(绘制表关系图)
模型详情
- 数据表
- 字段名称
- 字段类型
- 字段描述
- 是否使用
- 维度信息
2.2 SQL模型
- 数据主题(业务用途)
- 查询引擎(查询工具)
- SQL语句
模型详情
- 字段名称
- 字段类型
- 字段描述
- 维度信息
- 是否使用
3. 维度管理模块
- 维度名称
- 业务定义
- 业务分类
- 维表
- 是否是日期维
- 对应code
- 对应name
- 绑定维表(如果有维表)
4. 指标管理模块
包括基础信息管理、技术信息管理、关联指标管理、关联应用管理
核心部分是指标与模型的绑定关系,通过使用演进形成了当前系统两类绑定关系:绑定物理模型和构建虚拟模型。
- 绑定物理模型是指标与模型管理中的物理模型字段绑定,并配置对应的计算公式,或还包含一些额外的高级配置,如二次计算、模型过滤条件等;
- 创建虚拟模型是通过已有指标和其对应的物理模型,具体步骤首先配置已有指标的计算方式或指标维度的过滤,然后选择指标已绑定的物理模型,形成一个虚拟模型,虚拟模型的分析维度就是所选指标基础模型的公共维度。
基础信息管理(业务维护)
- 指标名称
- 业务分类
- 统计频率
- 精度
- 单位
- 指标类型
- 指标定义
- 计算逻辑
- 分析方法
- 影响因素
- 分析维度
技术信息管理(技术维护)
- 指标名称(必填)
- 数据类型
模型信息
- 模型名称
- 筛选指标
- 公共引擎
- 查询引擎
基础指标信息
- 基础指标
- 业务线/主题
- 指标代码
- 数据模型
- 支持维度
- 计算公式
- 分析维度
- 场景描述
基础模型信息
- 数据模型名称
- 查询引擎
- 绑定字段
- 计算公式
- 操作人
- 操作时间
- 支持维度
5. 应用管理
应用管理由数据应用、外部应用、数据地图三大模块组成,它们构成了对外服务的主体,记录了外部应用与平台内管理的指标、维度、模型和表的关联关系,也提供数据查询展示、应用层ETL生产的能力。而且数据开发人员从底层向上观察,可以追踪数据最终的所有流向;业务分析人员从顶层向下观察,可以看到构成服务的所有数据来源。
5.1 数据应用模块
数据应用模块是记录生成每个服务所需的指标、维度和数据模型的关系。每次服务中可以包含多个指标,这些指标可以来源于多个数据模型,不过不同的数据模型中需要包含公共维度,因为是通过这些公共维度将不同模型关联起来。
数据应用中构建的服务可以发布成查询服务、应用层ETL生产服务、对外API数据接口服务、通用报表配置服务,来满足业务的不同需求
需要信息:
- 应用名称
- 查询引擎
统计指标列表
- 统计指标
- 指标代码
- 数据模型
- 支持维度
- 分析维度列表
where条件
- 逻辑运算
- 过滤字段
- 是否为动态参数
- 比较运算
- 值
- 操作
- 备注
需要功能:
- 生成SQL
- 执行查询
5.2 外部应用模块
外部应用模块管理外部应用和应用内的模块,以及这些模块订阅的对应数据应用,目标是实现API接口调用的权限管理和数据最终流向的记录。
具体的实现上模块
首先创建对应的外部应用,记录:
- 对应的外部应用
- 记录外部应用的名称
- URL
-APPKEY等信息
然后由对应应用的负责人创建模块,记录:
- 模块名称
- URL
- moduleKey等信息。
这些信息完善后,由对应的数据应用赋权给对应的模块,建立起数据应用与外部应用的联系。最后在外部应用调用平台对外API接口时,进行权限管理。
5.3 数据地图
数据地图功能是追查数据的流向,可以从数据表、模型、指标、数据应用、外部应用任意节点查看上游数据来源和下游数据去向