Hive专项练习 7
- 外部表不会加载到Hive的默认仓库(挂载数据)
- 减少数据的传输
- 还能和其他外部表共享数据,使得数据管理更加灵活和高效。数据共享的效果:
- 任何对底层HDFS路径中的数据的修改,都会立即反映在这两个外部表上,因为它们共享相同的数据。
- 如果数据被删除或移动,任何查询这两个表的尝试都会反映出数据的变更。
- 由于数据是共享的,因此不需要担心数据冗余或同步问题。
CREATE EXTERNAL TABLE IF NOT EXISTS my_external_table (
column1 STRING,
column2 INT,
...
)
LOCATION 'hdfs://path/to/data';
CREATE EXTERNAL TABLE IF NOT EXISTS another_external_table (
column1 STRING,
column2 INT,
...
)
LOCATION 'hdfs://path/to/data';
-- my_external_table和another_external_table
-- 两个外部表都指向了相同的HDFS路径,它们共享底层的文件数据
- Hive存储格式
- ORC格式是Hive 0.11版本以后才支持
- RCFile是ORC的前身;是一种行列存储相结合的存储方式,行存为块,块为列存相结合
- Parquet默认使用 Snappy 压缩格式;对于大型查询是高效的,对于扫描表格中的特定列的查询特别有用
- Hive 特性
- 为了数据仓库而设计
- 迭代式算法无法表达
- 数据挖掘方面不擅长
- 分布式拓展能力强,适合高吞吐量、批量、海量数据处理
- Hive计算框架基于MapReduce框架衍生而来,是一种单机工具,不属于MapReduce分布式框架
- Hive SQL作业具有高容错性:即使节点出现问题,仍然可以成功运行
Hive专项练习 文章被收录于专栏
Hive专项练习错题