Skip to content

Latest commit

 

History

History
executable file
·
62 lines (39 loc) · 2.54 KB

5.数据模型与元数据.md

File metadata and controls

executable file
·
62 lines (39 loc) · 2.54 KB

Hive数据模型

  • Hive数据模型包括:

    • Database 数据库:Hive数据模型的概念等同于关系型数据库的schema,是数据库的组织和结构,描述了数据库的表、列、视图等对象的信息

    • Table 表:Hive中表的概念与关系型数据库中表的概念一致

    • Partition 分区:类似关系数据中的表分区,Hive中同一分区的数据会放到同一目录下,使用分区在一些条件下能够提高计算效率,同一分区的数据可以进一步划分为桶,类似于子分区。

    • Bucket 桶:分区的数据可以进一步划分为桶,类似于子分区。

  • 与关系数据库的区别在于Hive的表可以分为内部表和外部表

    • 内部表Drop的时候会删除HDFS上的数据,适用于中间表等不需要从外部导入数据的情况。

    • 外部表Drop时候不会删除HDFS上的数据,适用于将外部数据映射到表中的源表。

元数据

描述数据的数据

元数据

元数据是对具体数据的一种格式化,Hive将SQL翻译成MapReduce的过程需要结合元数据来完成,Hive的元数据存储在关系型数据库中,这个数据库可以是Hive自带的derby,也可以是外部的MySQL数据库。

Hive元数据表

字段 用途
VERSION 存储Hive版本的元数据表
DBS、DATABASE_PARAMS Hive数据库相关的源数据表
TBLS、TBL_PRIVS、TABLE_PARAMS Hive表和视图相关的元数据表
SDS、SD_PARAMS、SERDES、SERDE_PARAMS Hive文件存储信息相关的元数据表

注:

DBS中存储Hive中所有数据库的基本信息。

DATABASE_PARAMS存储数据库的相关参数。

不太常用的源数据表

字段 用途
COLUMNS_V2 表字段相关元数据
PARTITIONS、PARTITION_KEYS、PARTITION_KEY_VALS、PARTITION_PARAMS 数据库权限信息表
DB_PRIVS 数据库权限信息表
IDXS 存储Hive索引相关元信息
INDEX_PARAMS 索引相关的属性信息
TAB_COL_STATS 表字段的统计信息
TBL_COL_PRIVS 表字段的授权信息
PART_PRIVS 分区的授权信息
PART_COL_STATS 分区字段的统计信息
PART_COL_PRIVS 分区字段的权限信息
FUNCS 用户注册的函数信息
FUNC_RU 用户注册函数的资源信息