《数据资产管理核心技术与应用》是清华大学出版社出版的一本图书,全书共分10章,第1章主要让读者认识数据资产,了解数据资产相关的基础概念,以及数据资产的发展情况。第2~8章主要介绍大数据时代数据资产管理所涉及的核心技术,内容包括元数据的采集与存储、数据血缘、数据质量、数据监控与告警、数据服务、数据权限与安全、数据资产管理架构等。第9~10章主要从实战的角度介绍数据资产管理技术的应用实践,包括如何对元数据进行管理以发挥出数据资产的更大潜力,以及如何对数据进行建模以挖掘出数据中更大的价值。
图书介绍:数据资产管理核心技术与应用_百度百科
今天主要是给大家分享一下第二章的内容:
第二章的标题为元数据的采集与存储 -> 关注清哥聊技术公众号,了解更多技术文章
主要是介绍了如何从Apache Hive、Delta lake、Apache Hudi、Apache Iceberg、Mysql 等常见的数据仓库、数据胡以及关系型数据库中采集获取元数据。、
1、Hive的元数据采集方式:
1.1、基于Hive Meta DB的元数据采集
由于Hive在部署时,是将数据单独存储在指定的数据库中的,所以从技术实现上来说肯定是可以直接通过从Hive元数据存储的的数据库中获取到需要的元数据信息。Hive通常是将元数据存储在单独的数据库中,可以在部署时由用户自己来指定存储在哪种数据库上,通常可以支持存储在MySQL、SQLServer、Derby 、Postgres、Oracle等数据库中。Hive元数据数据库中常见的关键表之间的关联关系如下图,根据下图的关联关系,我们就可以用SQL语句查询到需要的元数据的数据信息。
相关表的介绍如下:
DBS:存储着Hive中数据库的相关基础信息
DATABASE_PARAMS:存储着Hive中数据库参数的相关信息
TBLS:存储着Hive中数据库的数据表的相关基础信息
COLUMNS_V2:存储着数据表的字段信息
TABLE_PARAMS:存储着Hive中数据库的数据表参数或者属性的相关基础信息
TBL_PRIVS:存储着表或者视图的授权信息
SERDES:存储着数据序列化的相关配置信息
SERDE_PARAMS:存储着数据序列化的属性或者参数信息
SDS:存储着数据表的数据文件存储的相关信息
SD_PARAMS:存储着数据表的存储相关属性或者参数信息
PARTITIONS:存储着数据表的分区相关信息
PARTITION_KEYS:存储着数据表的分区字段信息
PARTITION_PARAMS:存储分区的属性或者参数信息
1.2、基于Hive Catalog的元数据采集
Hive Catalog 是Hive提供的一个重要的组件,专门用于元数据的管理,管理着所有Hive库表的结构、存储位置、分区等相关信息,同时Hive Catalog提供了RESTful API或者Client 包供用户来查询或者修改元数据信息,其底层核心的Jar包为hive-standalone-metastore.jar。在该Jar包中的org.apache.hadoop.hive.metastore.IMetaStoreClient.java 接口中定义了对Hive元数据的管理的抽象,详细代码实现可以参考纸质书。
在Hive2.2.0版本之前Hive还提供了以Hcatalog REST API的形式对外可以访问Hive Catalog(Hive2.2.0版本后,已经移除了Hcatalog REST API这个功能),REST A