Hive Meta(Hive元数据)

1,437 阅读3分钟

数据库

DBS

数据库信息,记录了数据库的名称、Location和描述等

列名描述示例数据
DB_ID数据库ID1
DESC数据库描述Default Hive database
DB_LOCATION_URI数据库Locationviewfs://......
NAME数据库名default
OWNER_NAME数据库ownerpublic
OWNER_TYPEowner类型ROLE

TBLS

Hive表信息,记录了表的名称、类型

外键:

  • DB_ID:关联 DBS
  • SD_ID:关联 SDS
列名描述示例数据
TBL_ID表ID1
CREATE_TIME创建时间,十位时间戳1494310346
DB_ID数据库ID1
LAST_ACCESS_TIME最近访问时间,十位时间戳1494310346
OWNER表所有者hive
RETENTION保留字段0
SD_ID列相关信息外键1
TBL_NAME表名xxxxxx
TBL_TYPE表类型取值:MANAGED_TABLE、EXTERNAL_TABLE、INDEX_TABLE、VIRTUAL_VIEW
VIEW_EXPANDED_TEXT视图扩展SQLVIEW_ORIGINAL_TEXT的详细写法
VIEW_ORIGINAL_TEXT视图原始SQLselect * from 库名.表名
IS_REWRITE_ENABLED表是否可重写

字段和存储

SDS

表的存储信息,并且可以关联 COLUMNS_V2 来获取表字段信息

外键:

  • CD_ID:关联 COLUMNS_V2
  • SERDE_ID:关联 SERDES
列名描述示例数据
SD_ID存储信息id1
CD_ID字段id1
INPUT_FORMAT读取表数据的input_format类org.apache.hadoop.mapred.TextInputFormat
IS_COMPRESSED是否压缩0
IS_STOREDASSUBDIRECTORIES是否以子目录存储0
LOCATION表Locationviewfs://......
NUM_BUCKETS分桶数量0
OUTPUT_FORMAT写入表数据的output_format类org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
SERDE_ID序列化类id1

COLUMNS_V2

表的字段

列名描述示例数据
CD_ID字段id1
COMMENT字段描述名称
COLUMN_NAME字段名称name
TYPE_NAME字段类型string
INTEGER_IDX字段在表中的index0

SERDES

存储相关的序列化类

列名描述示例数据
SERDE_ID序列化类id1
NAME名称
SLIBclass全限定名org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe

分区

PARTITIONS

表的分区信息

外键:

  • SD_ID:关联 SDS,每个分区都有独立的一条 SDS 记录
  • TBL_ID:关联 TBLS
列名描述示例数据
PART_ID分区id1
CREATE_TIME分区创建时间,十位时间戳1494310346
LAST_ACCESS_TIME最近访问时间,十位时间戳1494310346
PART_NAME分区名称分区字段=分区值
SD_ID存储信息id1
TBL_ID表id1

PARTITION_KEYS

Hive表的分区字段

列名描述示例数据
TBL_ID表id1
PKEY_COMMENT分区字段描述
PKEY_NAME分区字段名称
PKEY_TYPE分区字段类型string
INTEGER_IDX分区字段index0

PARTITION_KEY_VALS

分区字段的取值

列名描述示例数据
PART_ID分区id1
PART_KEY_VAL分区字段的值
INTEGER_IDX对应的分区字段索引0

如果某个分区有两个分区字段:type,subType,其中type为第一个分区字段,索引为 0

并且存在一个分区 type='家电'/subType='电视机',该表会有以下记录

PART_IDPART_KEY_VALINTEGER_IDX
xxx家电0
xxx电视机1

自定义函数

FUNCS

列名描述示例数据
FUNC_ID函数id1
CLASS_NAME函数类全限定名com.xiaoke.HelloWorld
CREATE_TIME创建时间,十位时间戳1599547311
DB_ID函数归属数据库id1
FUNC_NAME函数名称hello_world
FUNC_TYPE函数类型1
OWNER_NAME函数ownerhive
OWNER_TYPEowner类型USER

FUNC_RU

列名描述示例数据
FUNC_ID函数id1
RESOURCE_TYPE资源类型1
RESOURCE_URI资源URIhdfs://...
INTEGER_IDX

一些属性表

DATABASE_PARAMS

数据库属性

列名描述示例数据
DB_ID数据库ID1
PARAM_KEY属性键
PARAM_VALUE属性值

TABLE_PARAMS

Hive表属性

列名描述示例数据
TBL_ID表ID1
PARAM_KEY属性键
PARAM_VALUE属性值

PARAM_KEY:

  • EXTERNAL:是否外部表
  • comment:表描述
  • totalSize:表大小
  • numRows:表记录数

SD_PARAMS

列名描述示例数据
SD_ID存储信息id1
PARAM_KEY属性键
PARAM_VALUE属性值

SERDE_PARAMS

序列化属性

列名描述示例数据
SERDE_ID序列化类id1
PARAM_KEY属性键
PARAM_VALUE属性值

PARTITION_PARAMS

分区属性

列名描述示例数据
PART_ID分区id1
PARAM_KEY属性键
PARAM_VALUE属性值