Hive的数据模型及各模块的应用场景

Posted sx66

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hive的数据模型及各模块的应用场景相关的知识,希望对你有一定的参考价值。

Hive的数据模型

 
技术图片
Hive数据模型.png

数据模型组成及应用场景

  • Hive的数据模型主要有:database、table、partition、bucket四部分;

数据模型之database

  • database:相当于关系型数据库中的命名空间,作用是将数据库应用隔离到不同的数据库模式中,hive提供了create database dbname、use dbname 以及drop database dbname的语句;

数据模型之table

  • table:表是由存储的数据以及描述表的一些元数据组成。数据存储再分布式文件系统中,元数据存储在关系型数据库中;
  • hive表分四种:
    • MANGED_TABLE :内部表
    • EXTERNAL_TABLE:外部表
    • INDEX_TABLE:索引表
    • VIRTUAL_VIEW :视图表
  • 查看表的具体信息使用:desc tablename或者 desc formatted tablename
    Hive内部表和外部表的区别

数据模型之partition

  • hive的分区是根据某列的值进行粗略的划分,每个分区对应HDFS上的一个目录;

数据模型之bucket

  • 要使用hive的分桶功能,首先需要打开hive对痛的控制 set hive.enforce.bucketing=true;
  • bucket是按照指定值进行hash,每个桶就是表目录里的一个文件

以上是关于Hive的数据模型及各模块的应用场景的主要内容,如果未能解决你的问题,请参考以下文章

深入学习Hive应用场景及架构原理

深入学习Hive应用场景及架构原理

hive的典型应用场景

大数据(3g)HIVE开窗函数应用场景(不定更)

Hive视图如何创建特点及应用场景

Hive手册