元数据与元数据平台
(一)元数据的定义
如果按照传统的定义,元数据是关于数据的数据,是为了描述数据的相关信息而存在的数据,例如记录数据的存储位置、模型定义、生命周期、血缘关系等信息。例如我们看一部电影,电影本身就是数据,那么元数据就是用来描述这部电影的数据。如下图所示: 在数据仓库体系中,元数据代表了一种统计数据从元数据、数据仓库到数据应用的全链路信息,记录了统计数据从产生到展示的全部过程。可以说,有了元数据,开发人员便可以方便的找到统计数据背后的计算逻辑与过程,用于指导开发工作并追踪数据问题,可以极大的提升工作的效率。元数据按照用途的不同可以分为两个部分:技术元数据和业务元数据。技术元数据是存储关于数据仓库体系建设细节的数据,常见的用如下几种:- 存储信息:例如表名、字段名、字段备注、分区、责任人、文件大小、表类型、生命周期等;
- 运行信息:例如Hadoop上运行MR的Job信息、实例名称、输入输出、运行参数、执行时间、优先级等;再例如Hive上运行的SQL内容、查询表名、扫描文件大小等;
- 开发信息:例如数据开发方式、任务调度时间、上下游依赖、运行节点信息等;
- 质量信息:例如运行状态、报警信息、质量评分等。
- 数据信息:例如维度、字段涵义、安全等级、计算逻辑、指标定义等;
- 应用信息:例如展示平台、应用产品等。
(二)元数据存在的意义
在传统意义上,元数据有两方面的用处:-
帮助数据平台了解自己本身的情况:例如我有哪些数据、我存储的数据有多大、如何找到我所需要的数据、我的数据何时产出等信息,当我们拿到这些信息后,就可以做对应的运维报警等工作;
-
帮助数据平台制定数据统计的标准:例如数据口径如何统一、计算指标如何统一、数据之间的关系如何、数据的上下游关联数据是什么等信息,打通了上下游数据之间的关联关系,就可以为数据质量及维护可视化奠定基础。
-
快速的搜索定位:通过搜索引擎的方式来查找相关数据,支持精确查询、模糊查询、表名查询、字段查询、备注查询等方式;
-
标准化的图形展示:采用图形化的方式来组织页面逻辑,例如采用类似Wifi图标的形式来标注数据质量级别,肉眼可见的便捷,方便使用者所需要的关键信息;
-
积累历史数据信息:在很多场景下,历史数据是不需要重复计算的,直接拉取能够极大的避免重复开发。例如针对新用户的统计,可以拉取历史用户信息,和每日用户登录日志进行关联,用于生产每日新增用户;
-
直接关联分析工具:因为数据的信息直接存储在平台上,因而可以调用报表插件来快速看到直观的报表信息,不需要二次加工开发,很大的提升了开发的效率。