文化传播集团网站建设,网站查询域名ip查询,婚庆网站html模板,大连网站设计 仟亿科技Apache Hive 支持几种熟知的Hadoop使用的文件格式#xff0c;Hive也能加载并查询其他Hadoop组件创建的不同文件格式#xff0c;如Pig或MapReduce。本文对比Hive不同文件格式#xff0c;如#xff1a;TextFile, SequenceFile, RCFile, AVRO, ORC,Parquet#xff0c;Clouder… Apache Hive 支持几种熟知的Hadoop使用的文件格式Hive也能加载并查询其他Hadoop组件创建的不同文件格式如Pig或MapReduce。本文对比Hive不同文件格式如TextFile, SequenceFile, RCFile, AVRO, ORC,ParquetCloudera Impala也支持这些格式。在Apache Hive中不同文件格式和压缩编解码方式对不同的数据集产生效果差异明显基于场景选择合适的文件格式非常重要就如在ClickHouse中选择合适的存储引擎一样。下面分别介绍Hive支持的各类文件格式。 Hive Text File Format
Hive Text File Format是缺省的文件格式可以使用该格式与其他客户端应用传输数据。文本文件格式为大多数应用支持数据按行存储每一行代表一条记录每行以回车符(\n)结束。
文本文件是简单平面文件格式可以使用BZIP2进行压缩减少存储空间。Hive创建表命令可以使用STORED AS TEXTFILE支持存储格式示例语法如下
Create table textfile_table
(column_specs)
stored as textfile;Hive Sequence File Format
Sequence文件格式是Hadoop支持的平面文件数据存储为二进制键值对格式。这些文件是二进制格式、且能够分割主要优势可以合并两个或多个文件为一个文件。
在Hive中创建顺序文件表可以通过增加存储选项实现STORED AS SEQUENCEFILE 。下面是示例语法
Create table sequencefile_table
(column_specs)
stored as sequencefile;Hive RC File Format
RC 文件格式是行列文件格式是Hive提供高行级压缩率的另一个文件格式。如果需要一次性执行多行可以使用RCFile格式。
RCFile格式与顺序文件格式非常类似也按照键值对方式存储数据。Hive创建RCFile表时可以指定STORED AS RCFILE选项。示例语法如下
Create table RCfile_table
(column_specs)
stored as rcfile;Hive AVRO File Format
AVRO是为Hadoop提供数据序列化和数据交换服务的开源项目它可以用于在Hadoop生态与任何编程语言编写的应用之间交换数据。Avro是基于Hadoop应用最受欢迎的文件格式。
创建Hive AVRO表可以指定STORED AS AVRO选项
Create table avro_table
(column_specs)
stored as avro;Hive ORC File Format
ORC( Optimized Row Columnar )文件格式提供了更有效方式存储Hive表数据。这个文件系统实际上就是为了克服其他Hive文件格式的限制特性而设计的。当Hive从大表中读取、写入和处理数据时使用ORC文件可以提高性能。
创建Hive ORC表可以指定STORED AS ORC选项
Create table orc_table
(column_specs)
stored as orc;Hive Parquet File Format
Parquet是面向类二进制文件格式对于大规模查询应用非常高效尤其是查询表中特定列数据且能够使用 Snappy, gzip方式进行压缩缺省为Snappy。关于parquet文件格式的优势可以参考基于R语言理解Parquet文件格式
创建Hive Parquet表可以指定STORED AS ORC选项
Create table parquet_table
(column_specs)
stored as parquet;总结
本文介绍了Hive中支持的不同文件格式了解并选择合适的文件格式对于大数据类应用非常重要。