一、hive的存储结构
1.数据仓库:在 HDFS 中表现为${hive.metastore.warehouse.dir}目录下一个文件夹
2.表:hive的表分为内部表、外部表、分区表、分桶表,表在hdfs中的表现形式也是目录,但是不同的表之间的表现形式不同
3.视图:物化,hive是不会进行物化,相当于给一个sql语句建立了一个快捷方式,保存的是一个视图中的sql语句。只读,基于基表创建。
4.数据文件 :表中的真实数据
二、hive表的分类
内部表(Managed table),数据在Hive内部,即导入数据的时候是将数据剪切到指定位置,删除的时候元数据和表数据都删除
- 外部表(External table),数据在Hive外部,只需有访问权限,即导入数据的时候只添加元数据,删除的时候只删除元数据
对于Hive中的表,可以建立为分区表或桶表,其中——
- 分区表,是对表按照某一列进行划分(如每个日期化为一个分区),加快查询速度
- 桶表,是对表按照某一列的hash值分配到不同的桶中,加快查询速度