壮实学数据技术07:元数据
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了壮实学数据技术07:元数据相关的知识,希望对你有一定的参考价值。
参考技术A hi,米娜桑,我是大家的怪力少女赵壮实!又是一个美好的周六的早上,今天我们来聊聊——元数据!
元数据也是近两年才火热起来的产品岗位和概念,因为偏向于后侧,相比于数据分析、数据BI、用户分层、归因等酷炫的名词下,元数据就像一朵白莲花。
01 什么是元数据?
好吧,元数据为什么可以睥睨一切呢?因为它是“元”数据。
啥是“元数据”——metadata?
壮实见到这个词语,第一次流下了久别重逢的泪水,甚至有点想笑,莫非,元数据,是一位熟悉现代主义思潮的大佬起的名字?
好的,壮实先从人文视角解释一下什么叫做“元”。
元,依旧指的是原始、原初的意思。我们那元叙事、元数据、元小说给大家讲讲什么是“元”。
1.“元”+“叙事”=元叙事
对于叙事的完整解释,即对历史的意义、经历和知识的叙述
2.“元”+“数据”=元数据
有关于数据的数据
3.“元”+“小说”=元小说
元小说,作家自觉地暴露小说的虚构过程,产生间离效果,进而让接受者明白,小说就是虚构,不能把小说当作现实。这样,虚构在小说中也就获得了本体的意义。
好吧,简单来说,元就是这个东西原始的框架、元素。在现代主义大工业的背景下,人类一切进入了“秩序模式”,所以需要“元”。所以就有了万物“元”化。
是的,大家是不是最近还会听到一个词,叫做“元认知”。没什么神奇的,套用概念,元认识就是关于认知的认知,也许善友老师“第一性原理”和叫兽“时间的朋友”或许是“元认知”?
那元数据,我们就好理解了,就是“关于数据的数据”,有了元数据,它可以让我们的数据生产、使用更加秩序化。
数据生产,有的人会叫做“后台元数据”:指导数据清洗装载工作。
数据使用,有的人会分为“前端元数据” :描述性、帮助我们更加流畅的使用报表和查询工具。
对于元数据的分类,我们可以分为以下三类:
业务元数据 从业务层面描述元数据。
技术元数据 数据技术层面上的各种统计信息,包含数据类型、长度、血缘沿袭、数据剖析结果等。
处理过程元数据 ETL自身执行结果统计信息,如多少行被加载、多少行数据被丢弃以及数据加载时间等。
02 元数据核心理念和关键要素
话不多说,我们来上阿里云官方ppt:
好的,如果你们看不懂,壮实还画了一个图:
原来的数据生产-使用流程
涉及的相关的元数据
03 元数据产品
目前国内的元数据管理工具大概有三类。
一是像IBM、CA等公司都提供的专门工具,比如IBM收购Ascential得到的MetaStage,CA的DecisionBase;
二是像DAG的MetaCenter,开源产品Pentaho Metadata,它们不依托于某项BI产品,是一种第三方的元数据管理工具;
开源产品Pentaho Metadata示意图
三是像普元、石竹这样的集成商也有自己的元数据管理工具:普元MetaCube、新炬网络元数据管理系统、石竹MetaOne等。
普元元数据驱动的微服务架构:
https://cloud.tencent.com/developer/article/1080067
https://cloud.tencent.com/developer/article/1080078
新炬网络元数据管理系统:
http://www.shsnc.com/index.php?m=content&c=index&a=lists&catid=188
石竹MetaOne产品图:
专门的元数据管理工具,对自家产品兼容较好,一旦涉及跨系统管理,就不尽如人意了。
04 元数据的功能和价值
如果你问我,元数据的功能和价值在哪里?目前,业界开展了一些实践:
1、血缘分析:向上、向下表级、字段级别的追溯数据。血缘分析可以让您轻松知道:“我正在查看的报告数据来源是什么?”、“数据经过哪些转换处理?”、“销售额”从包含税费更改为不包括税费,哪些下游字段受到了影响。血缘分析可以满足许多行业(包括医疗、金融、银行和制造业等)对所呈现数据的特殊监管及合规性要求。
2、指标一致性分析:定期分析指标定义是否和实际情况一致。大佬会上对不齐数据是何等的尴尬。。。。
3、实体关联查询:事实表与维度表的代理键自动关联。
05 后记
打破一切:从人文后现代主义到数据后现代主义。
20世纪60年代,德国、法国、美国等出现了反西方近现代体系哲学倾向的思潮,学术上称之为“后现代主义”。你也许不知道啥是后现代主义,来一张图感受一下:
对!就是达利的《记忆的永恒》。
后现代主义就是一种用无序反对有序,用个人呓语反对宏大叙事、用解构反对结构的一种精神。
当代美国活跃的后现代主义者之一格里芬就说:“如果说后现代主义这一词汇在使用时可以从不同方面找到共同之处的话, 那就是,它指的是一种广泛的情绪,而不是一种共同的教条———即一种认为人类可以而且必须超越现代的情绪。”
所有理论的背后,都是这个时代的主流认知+情绪。数据也不例外。我们来看看《壮实学数据技术01》中的数据仓库两位大佬之争,就知道人们在反复横跳在秩序和速度中。
所以,我们今天要考虑,元数据在今天的合理性是什么?
在杂乱数据被管理起来之后,是不是在复杂、程式化上需要做做减法?
数据多≠信息多。如何把数据变为信息,是每一个数据人需要持续思考的事情。
元数据是什么?如何管理元数据?
元数据是什么?如何管理元数据?
来源:大数据
01 什么是元数据?
元数据(metadata)是关于数据的组织、数据域及其关系的信息,简言之,元数据就是描述数据的数据。概念总是生涩,下面举几个例子。
示例1:歌词中的元数据
- 有一首很多80后耳熟能详的歌曲叫《小芳》,歌词中有这么一句:“村里有个姑娘叫小芳,长得好看又善良。” 我们对这句歌词做一下分析。姓名:小芳;性别:姑娘(女);长相:好看;性格:善良;住址:村里。歌词里面,“小芳”是被描述的对象,而“姓名”“性别”“长相”“性格”“住址”就是描述“小芳”的元数据。
示例2:户口本中的元数据
- 户口本中除了有姓名、身份证号、出生日期、住址、民族等信息外,还有家庭关系,如夫妻关系、父子关系、兄弟关系等。这些信息就是描述一个人的元数据,通过户口本中的元数据,我们不仅能够了解一个人的基本信息,还能够了解其家庭关系。
示例3:图书馆中的元数据
- 图书馆都会用一个叫作“图书目录”的文件夹来管理藏书,图书目录包含图书名称、编号、作者、主题、简介、摆放位置等信息,用来帮助图书管理员管理和快速查找图书。元数据就如同图书馆的图书目录一样,能够帮助数据管理员管理数据。
示例4:元数据好比字典
- 字典包含一个字的注音、含义、组词、举例等基本信息及其字体结构、相关引用、出处等。另外,我们可以通过拼音或偏旁部首查到这个字。所有这些信息都是对这个字的详细描述,它们就是描述这个字的元数据。
示例5:元数据就像地图
- 地图是按一定比例运用线条、符号、颜色、文字注记等描绘显示地球表面的自然地理、行政区域、社会经济状况的图。通过地图,你能够找到自己所处的地理位置,了解你从哪里来,到哪里去,途中要路过哪些地方。元数据也具备这样的特点,它能够帮助企业了解自己有哪些数据,这些数据存放在哪里,数据的来源、去向及加工路径等。
元数据与数据的不同之处在于:元数据描述的不是特定的实例或记录,IT部门和业务部门都需要高质量的元数据来理解现有数据;元数据是比一般意义上的数据范畴更加广泛的数据,不仅表示数据的类型、名称、值等信息,还提供数据的上下文描述,比如数据的所属业务域、取值范围、数据间的关系、业务规则、数据来源等。
可以用5W1H模型来理解元数据,如下表所示:
知识类型 | 定义 | 技术示例 | 业务示例 |
---|---|---|---|
Who | 谁 | 谁负责数据接口的开发? | 谁是财务域、业务域的负责人? |
What | 干什么或是什么 | CRM和DW之间的数据血缘关系是什么? | 企业市场管理业务域的指标体系包含哪些指标? |
When | 什么时候 | 提取、转换和加载(ETL)作业什么时候运行? | 我正在分析的数据上次刷新是什么时候? |
Where | 在哪里 | 所有类型的销售订单都分布存储在哪个系统的哪些数据表当中? | 在哪里可以找到按营销活动显示我们的社交媒体分析的报告? |
How | 怎么样,怎么做 | 如何设置数据质量的管理规则? | 如何获得产品的竞争优势? |
Why | 为什么 | 出现数据质量问题的根本原因是什么? | 为什么老客户会不断流失? |
02 元数据的类型
按照不同应用领域或功能,元数据一般大致可为三类:业务元数据、技术元数据和操作元数据。
1. 业务元数据
业务元数据描述数据的业务含义、业务规则等。通过明确业务元数据,让人们更容易理解和使用业务元数据。元数据消除了数据二义性,让人们对数据有一致的认知,避免“自说自话”,进而为数据分析和应用提供支撑。
常见的业务元数据有:
-
业务定义、业务术语解释等;
-
业务指标名称、计算口径、衍生指标等;
-
业务规则引擎的规则、数据质量检测规则、数据挖掘算法等;
-
数据的安全或敏感级别等。
2. 技术元数据
技术元数据是对数据的结构化,方便计算机或数据库对数据进行识别、存储、传输和交换。技术元数据可以服务于开发人员,让开发人员更加明确数据的存储、结构,从而为应用开发和系统集成奠定基础。技术元数据也可服务于业务人员,通过元数据理清数据关系,让业务人员更快速地找到想要的数据,进而对数据的来源和去向进行分析,支持数据血缘追溯和影响分析。
常见的技术元数据有:
-
物理数据库表名称、列名称、字段长度、字段类型、约束信息、数据依赖关系等;
-
数据存储类型、位置、数据存储文件格式或数据压缩类型等;
-
字段级血缘关系、SQL脚本信息、ETL抽取加载转换信息、接口程序等;
-
调度依赖关系、进度和数据更新频率等。
3. 操作元数据
操作元数据描述数据的操作属性,包括管理部门、管理责任人等。明确管理属性有利于数据管理责任到部门和个人,是数据安全管理的基础。
常见的操作元数据有:
-
数据所有者、使用者等;
-
数据的访问方式、访问时间、访问限制等;
-
数据访问权限、组和角色等;
-
数据处理作业的结果、系统执行日志等;
-
数据备份、归档人、归档时间等。
03 元数据管理的目标
企业元数据管理的本质是有效利用企业数据资产,让数据发挥出尽可能大的价值。元数据管理可以帮助业务分析师、系统架构师、数据仓库工程师和软件开发工程师等相关干系人清楚地知道企业拥有什么数据,它们存储在哪里,如何抽取、清理、维护这些数据并指导用户使用。
以下元数据管理目标是企业的普遍诉求。
1. 建立指标解释体系
满足用户对业务和数据理解的需求,建立标准的企业内部知识传承的信息承载平台,建立业务分析知识库,实现知识共享。
能够回答以下问题:
-
企业有哪些数据?
-
什么是企业有效客户?有效客户和客户有何区别?
-
什么是产品的生命周期?
-
这个数据还叫什么名字?
-
数据仓库中的存储过程是谁写的?它用来干什么?现在还有在用吗?
典型应用:数据资源目录、业务术语表
2. 提高数据溯源能力
让用户能够清晰地了解数据仓库中数据流的来龙去脉、业务处理规则、转换情况等,提高数据的溯源能力,支持数据仓库的成长需求,降低因员工换岗造成的影响。
3. 数据质量稽核体系
通过非冗余、非重复的元数据信息提高数据完整性、准确性。元数据管理解决的问题是如何将业务系统中的数据分门别类地进行管理,建立报警、监控机制,出现故障时能及时发现问题,为数据仓库的数据质量监控提供基础素材。
04 元数据管理的技术
从技术层面来看,元数据管理的技术主要包括元数据采集、元数据管理、元数据应用和元数据接口等。
1. 元数据采集
在数据治理项目中,常见的元数据有数据源的元数据、数据加工处理过程的元数据、数据仓库或数据主题库的元数据、数据应用层的元数据、数据接口服务的元数据等。
元数据采集服务提供各类适配器来满足以上各类元数据的采集需求,并将元数据整合处理后统一存储于中央元数据仓库,实现元数据的统一管理。在这个过程中,数据采集适配器十分重要,元数据采集不仅要能够适配各种数据库、各类ETL、各类数据仓库和报表产品,还需要适配各类结构化或半结构化数据源。
1)关系型数据库
通过元数据适配器采集来自Oracle、DB2、SQL Server、MySQL、Teradata、Sybase等关系型数据库的库表结构、视图、存储过程等元数据。关系型数据库一般都提供了元数据的桥接器,例如Oracle的RDBMS,可实现元数据信息的快速读取。
2)NoSQL数据库
元数据采集工具应支持来自MongoDB、CouchDB、Redis、Neo4j、HBase等NoSQL数据库中的元数据,NoSQL数据库适配器多半利用了自身管理和查询Schema的能力。
3)数据仓库
对于主流的数据仓库,可以基于其内在的查询脚本,定制开发相应的适配器对其元数据进行采集。例如MPP数据库Greenplum,其核心元数据都存储在pg_database、pg_namespace、pg_class、pg_attribute、pg_proc这几张表中,通过SQL脚本就可以对其元数据进行采集。Hive表结构信息存储在外部数据库中,同时Hive提供类似show table、describe table之类的语法对其元数据信息进行查询。
当然,也可以利用专业的元数据采集工具来采集数据仓库系统的元数据。
4)云中的元数据
随着公有云的日趋成熟,通过提供安全的云连接,将云端企业元数据管理用作核心IT基础架构的扩展,尤其是在中小企业之间,已经成为现实。云端企业元数据管理通过各种上下文改善信息访问,并将实时元数据管理、机器学习模型、元数据API推进流数据管道,可以更好地管理企业数据资产。
5)其他元数据适配器
-
建模工具:PowerDesigner、ERwin、ER/Studio、EA等建模工具适配器。
-
ETL工具:PowerCenter、DataStage、Kettle等ETL工具适配器。
-
BI工具:Cognos、Power BI等前端工具中的二维报表元数据采集适配器。
-
Excel适配器:采集Excel格式文件的元数据。
当然,目前市场上的主流元数据产品中还没有哪一个能做到“万能适配”,在实际应用过程中都需要进行或多或少的定制化开发。
2. 元数据管理
从技术的角度看,元数据管理一般包括元模型管理、元数据审核、元数据维护、元数据版本管理、元数据变更管理等功能。
1)元模型管理
元模型管理即基于元数据平台构建符合CWM规范的元数据仓库,实现元模型统一、集中化管理,提供元模型的查询、增加、修改、删除、元数据关系管理、权限设置等功能,支持概念模型、逻辑模型、物理模型的采集和管理,让用户直观地了解已有元模型的分类、统计、使用情况、变更追溯,以及每个元模型的生命周期管理。同时,支持应用开发的模型管理。
支持元模型的全生命周期管理。元模型生命周期中有三个状态,分别是:设计态、测试态和生产态。
-
设计态的元数据模型,通常由ERWin、PowerDesigner的等设计工具产生。
-
测试态的元数据模型,通常是关系型数据,如Oracle、DB2、MySQL、Teradata等;或非关系型数据库,如MongoDB、HBase、Hive、Hadoop等。
-
生产态的元数据模型,本质上与测试态元数据差异不大。
通过元数据平台对应用开发三种状态的统一管理和对比分析,能够有效降低元数据变更带来的风险,为下游ODS、DW的数据应用提供支撑。
2)元数据审核
元数据审核主要是审核采集到元数据仓库但还未正式发布到数据资源目录中的元数据。审核过程中支持对数据进行有效性验证并修复一些问题,例如缺乏语义描述、缺少字段、类型错误、编码缺失或不可识别的字符编码等。
3)元数据维护
元数据维护就是对信息对象的基本信息、属性、被依赖关系、依赖关系、组合关系等元数据的新增、修改、删除、查询、发布等操作,支持根据元数据字典创建数据目录,打印目录结构,根据目录发现、查找元数据,查看元数据的内容。元数据维护是最基本的元数据管理功能之一,技术人员和业务人员都会使用这个功能查看元数据的基本信息。
4)元数据版本管理
在元数据处于一个相对完整、稳定的时期,或者处于一个里程碑结束时期,可以对元数据定版以发布一个基线版本,以便日后对存异的或错误的元数据进行追溯、检查和恢复。
5)元数据变更管理
用户可以自行订阅元数据,当订阅的元数据发生变更时,系统将自动通知用户,用户可根据指引进一步在系统中查询到变更的具体内容及相关的影响分析。元数据管理平台提供元数据监控功能,一旦监控到元数据发生变更,就在第一时间通知用户。
3. 元数据应用
1)数据资产地图
按数据域对企业数据资源进行全面盘点和分类,并根据元数据字典自动生成企业数据资产的全景地图。该地图可以告诉你有哪些数据,在哪里可以找到这些数据,能用这些数据干什么。
数据资产地图支持以拓扑图的形式可视化展示各类元数据和数据处理过程,通过不同层次的图形展现粒度控制,满足业务上不同应用场景的图形查询和辅助分析需要:
2)元数据血缘分析
元数据血缘分析会告诉你数据来自哪里,经过了哪些加工。其价值在于当发现数据问题时可以通过数据的血缘关系追根溯源,快速定位到问题数据的来源和加工过程,减少数据问题排查分析的时间和难度。
3)元数据影响分析
元数据影响分析会告诉你数据去了哪里,经过了哪些加工。其价值在于当发现数据问题时可以通过数据的关联关系向下追踪,快速找到有哪些应用或数据库使用了这个数据,从而最大限度地减小数据问题带来的影响。这个功能常用于数据源的元数据变更对下游ETL、ODS、DW等应用的影响分析。
血缘分析是向上追溯,影响分析是向下追踪,这是这两个功能的区别。
4)元数据冷热度分析
元数据冷热度分析会告诉你哪些数据是企业常用数据,哪些数据属于僵死数据。其价值在于让数据活跃程度可视化,让企业中的业务人员、管理人员都能够清晰地看到数据的活跃程度,以便他们更好地驾驭数据,处置或激活僵死数据,从而为数据的自助式分析提供支撑。
5)元数据关联度分析
元数据关联度分析会告诉你数据与其他数据的关系,以及它们的关系是怎样建立的。关联度分析是从某一实体关联的其他实体及其参与的处理过程两个角度来查看具体数据的使用情况,形成一张实体和所参与处理过程的网络,如表与ETL程序、表与分析应用、表与其他表的关联情况等,从而进一步了解该实体的重要程度。
4. 元数据接口
建立元数据查询、访问的统一接口规范,以将企业核心元数据完整、准确地提取到元数据仓库中进行集中管理和统一共享。
元数据接口规范主要包括接口的编码方式、接口响应、接口协议、接口安全、连接方式、技术实现、调用方式、报文格式等方面的内容。
-
接口编码方式:接口编码方式必须在接口的头信息中注明,常用的接口编码方式有UTF-8、GBK、GB2312、ISO-8859-1。
-
接口响应格式:元数据接口常用的报文格式,XML或JSON
-
接口协议:REST/SOAP协议
-
连接方式:POST
-
接口安全:Token身份认证
-
接口地址:http://url/service?[query]
以上是关于壮实学数据技术07:元数据的主要内容,如果未能解决你的问题,请参考以下文章