什么是元数据
元数据是关于数据的组织、数据域及其关系的信息,简单来说,元数据就是被用来描述数据的数据。具体来说,就是对动态数据的一种静态信息描述。狭义的元数据我们一般指的是数据集,表本身的信息(结构,量级,归属,修改历史)以及表与表之间的关系。
元数据的应用
1、应用于资产管理(数据地图),帮助企业对不同数据源的元数据进行业务分类、标签管理、从而更方便对数据进行检索、发现和收藏数据,提高数据的利用价值
2、应用于数据治理:数据的治理和生命周期管理
3、质量管理
4、数据安全
5、数据服务
主流元数据管理工具
1、atlas
Atlas主要负责同步各服务(HBase、Hive、Sqoop、Storm、Kafka)的元数据,并构建元数据实体之间的关联关系,并对所存储的元数据建立索引,为用户提供数据血缘关系查看及元数据检索等功能。
以上是Altals的架构图解,其他包括Metadata Sources 、Apps、Integration、Core。其中从图中能发现Atlas支持Hive、Sqoop、Storm、Hbase等数据元数据的管理,并且可通过2种方式集成数据(kafka Message 和Http Api的方式)
并且Atlas通过HBase存储元数据和Solr存储索引,以及通过图数据库存储血缘
Atlas的技术优势:
1、可视化的血缘采集和展示
2、插件化和高效的的元数据获取方式,通过hook获取同步元数据信息
3、规范统一的元数据标准
2、Matacat
Metacat是一种元数据服务,方便发现、处理和管理数据。
架构:
1、数据源(Data Source):支持RDS、AMAZON REDSHIFT、HIVE、Druid、Snowflke
2、计算引擎(Compute):支持Pig、HIVE、Spark、presto
Metacat是一种联合服务,提供统一的REST/Thrift接口来访问各种数据存储的元数据。元数据存储仍然是模式元数据的事实来源,所以Metacat没有保存这部分元数据。Metacat只保存业务相关和用户定义的元数据。它还将所有关于数据集的信息发布到Elasticsearch,以便进行全文搜索和发现。
Metacat的功能可以分为以下几类:
1、数据抽象和互操作性
2、业务和用户定义的元数据存储
3、数据发现
4、数据变更审计和通知
5、Hive Metastore优化