当前位置:首页 » 存储配置 » hive文件存储格式

hive文件存储格式

发布时间: 2023-03-17 12:59:40

A. 【大数据-数仓】HIVE下的文件存储遇到的一个问题(TEXTFILE、RCFILE)

问题:
Failed with exception Wrong file format. Please check the file's format.
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask

解决:
当遇到这个肆激问题时,可以肯定一点的是,文件的格式和建表时指定的存储格式是不一致的。
由此可以定位到问题出在纳雹宴哪里了。

1.确定数洞银据源的格式:
一般都是txt/csv文件

2.确定建表时指定的存储格式
show create table table_name;

然后查看:
STORED AS INPUTFORMAT #指定的存储格式

3.重新建表并修改指定的存储格式

B. leashive是什么文件

Hive的数据分为表数据和元数据,表数据是Hive中表格(table)具有的数据;而元数据是用来存储表的名字,表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等。
hive文件存储格式包括以下几类:
1、TEXTFILE
2、SEQUENCEFILE
3、RCFILE
4、ORCFILE(0.11以后出现)
其中TEXTFILE为默认格式,建表时不指定默认为这个格式,导入数据时会直接把数据文件拷贝到hdfs上不进行处理;SEQUENCEFILE,RCFILE,ORCFILE格式的表不能直接从本地文件导入数据,数据要先导入到textfile格式的表中,然后再从表中用insert导入SequenceFile,RCFile,ORCFile表中。

C. [hive]一种基于Hive日志分析的大数据存储优化方法_王正也_百度文库

一种悄或基于Hive日志分析的大数据存储优化方法 王正也 网络文库
http://wenku..com/link?url=-

2 一种基于Hive日志的大数据存储优化方法
2.1 优化方法概述
Hive作为Hadoop开源分布式平台下的数据仓库工具,他的作用是HDFS上存储的结构化数据,根据使用者的需求将其映射出数据表,并可以向用户提供类似sql的HiveQL查询功能,并将用户提交的Query转换成Map-Rece任务执行。Hive的优点是提供类SQL的查询接口,快速实现数据的统计分析功能,而不必编写专用的Map-Rece任务。而也正是因为如此,通用的Hive数据仓库,没有进行专用化的优化设计,其查询分析效率也有很大的优化空间[4]。
文章根据常用的HiveQL的查询日志分析和根据现有的数据存储结构的关联特性提出一种通用的Hive数据存储的优化方法。

本策略认为优化一个专用的Hive海量数据仓库分为以下几个步骤: 1. 分析常用查询日志,根据使用人员习惯定制数据分区结构。 2. 使用专用的优化过的列式存储结构作为数据导入格式。 3. 根据数据表,和表中字段的实际物理意义尘携合并压缩重复字段和数据表。 4. 根据数据表中字段实际的取值优化字段的存储类型。 5. 编写UDF,在不改变用户使用习惯的基础上,应用上述优化。 其中1.2.两点在数据导入阶段进行优化,3.4.5.是在对数据表字段和表结构的优化,需要配合UDF来进行。通过上述优化过程可以大大节省HiveQL的查询时间以及HDFS上数据的占用空间。

2.2 根据查询日志进行分区优化
Hive的日志记录了Hive的运行状况,为本文分析操作者的使用习惯提供了很大的帮助。可以通过编写Hive的EXPAIN功能进行日志的分析,利用Hive的EXPLAIN功能,本文可以得到查询语句的抽象语法树(ABSTRACT SYNTAX TREE),通过抽象语法树,本文可以快速得到查询语句的语法结构。
例如,以下一条语句SELECT col1, SUM(col2) FROM tab1 GROUP BY col1的通过EXPLAIN命令本文可以得到如下结果:
ABSTRACT SYNTAX TREE:
(TOK_QUERY (TOK_FROM (TOK_TABREF (TOK_TABNAME tab1))) (TOK_INSERT (TOK_DESTINATION (TOK_DIR TOK_TMP_FILE)) (TOK_SELECT (TOK_SELEXPR (TOK_TABLE_OR_COL col1)) (TOK_SELEXPR (TOK_FUNCTION sum (TOK_TABLE_OR_COL col2)))) (TOK_GROUPBY (TOK_TABLE_OR_COL col1))))

可以通过使用正则表达式抓取特征数据,得到该语句的语法结构,同时通过编写Shell脚本,批量执行EXPLAIN命令,可以很快的启兄伍理解到使用者的常用语法习惯,为后文的分区优化提供了数据支持。 通过对使用者常用字段进行分区(partition),带来的便利是大大的节省了一些常用查询的在硬盘中读取数据所消耗的时间。 通常在没有进行过优化的Hive系统中,每次查询提交之后,Hive要对输入数据进行全盘扫描满足条件的的项目,通过合理的划分分区,在单次任务提交后,可以按照任务的限定条件只扫描某些关键分区的数据,大大提高的Hive查询执行的效率。

2.3 选取合适的Hive数据存储格式
在Hive中数据表创建时需要指定文件存储格式,在Hive0.90版本中,常用的数据格式分为TEXTFILE、SEQUNCEFILE、RCFILE和用户自定格式等几种,以上格式的主要区别在行式存储与列式存储,不同压缩算法等方面的区别。根据Hive数据表格的特性,和通过Hive日志观察到的用户使用习惯等特性,通过选择合适的文件存储格式,可以大大提高查询效率,减少查询耗费时间。

4 结论
本文给出了一种基于Hive日志分析的大数据存储优化方法,通过实际测试可以看出,使用该优化方法的Hive数据存储系统无论从磁盘空间利用率还是从查询效率上都得到和很大提升。

D. hive分桶表的储存格式是什么固定的还是可以随意指定

对于每一个表或者是分区,Hive可以进一步组织成桶,也就是说桶是更为细粒度的数据范围划分。Hive是针对某一列进行分桶。Hive采用对列值哈希,然后除以桶的个数求余的方式决定该条记录存放在哪个桶中。分桶的好处是可以获得更高的查询处理效率。使取样更高效
hive表数据是在hdfs中储存的并没有固定的储存格式,hive只保存管理表元数据。
桶就是将数据表由一个文件存储分为多个文件存储
分桶语法:
create table t_buck(id string,name string)
clustered by (id) into 4 buckets;
指定了根据id分成4个桶,最好的导入数据方式是insert into table.
要开启模式开关 
set hive.enforce.bucketing = true;
set maprece.job.reces=4;
查询时cluster by指定的字段就是partition时分区的key

E. Hive导数

hive导数有多种方式

导出到csv 文件中
再传输文件到指定的节点上

3-1.因为有些字段中有",",导致csv中字段对应有问题;在导入时候会报错文件不存在,但是文件肯定存在;

3-2.导入表如果是分区表要加分区,不然也无法导入成功

3-3.一般手乎hive存储数据类型是orc表;不能够直接导入,因此要先建一个临时表textfile类型的表,表结构与导入目标表结构一致只是store as textfile 不一样;

3-4. load 时,执行的用户需要是该文件的owner ,不然会报权限问题

3-5. 直接将文件上传到表的hdfs路径下也能够直接查到数据,字段要能对应且解析格式也要对应

背景 :spark sql建毕宏悉表默认使用是sequencefile文绝拆件存储格式,如果存储文件csv文本,hive无法查询,如果用hive的sql语法创建表,存储格式为textfile则可兼容

F. Hive常用命令

参数说明:
EXTERNAL:创建外部表,在建表的同时可以指定源数据的路径(LOCATION),创建内部表时,会将数据移动到数据仓库指向的路径,若创建外部表不会有任何改变。在删除表时,内部表的元数据和源数据都会被删除,外部表不会删除源数据。

COMMENT:为表和列增加注释

PARTITIONED BY:创建分区表,
——PARTITIONED BY(dt STRING, country STRING)
CLUSTERED BY:创建分桶表
SORTED BY:创建排序后分桶表(不常用)
——CLUSTERED BY(userid) SORTED BY(viewTime) INTO 32 BUCKETS

ROW FORMAT DELIMITED:是用来设置创建的表在加载数据的时候,支持的列分隔符。Hive默认的分隔符是\001,属于不可见字符,这个字符在vi里是^A
—— ROW FORMAT DELIMITED FIELDS TERMINATED BY '\001';

STORED AS:指定存储文件类型 sequencefile (二进制序列文件)、textfile(文本)、rcfile(列式存储格式文件)、ORC
如果文件数据是纯文本,可以使用知则弊 STORED AS TEXTFILE。
如果数据需要压缩,使用 STORED AS SEQUENCEFILE。

LOCATION:指定表在 hdfs 上的存储位置

注意:若是外部表,则还需要删除文件(hadoop fs -rm -r -f hdfspath)

注意:INPATH后面的文件路径不能和hive表路径在hdfs上一致,最好是两个不同的文件路径,在加载过程中,源路径下的文件会被移动到hive表所在路径下,如果一致,会找不到文件错误;

Hive支持内置和自定义开发的文件格式。以下是Hive内置的一些格式:

默认是文本格式.
textfile 存储空间消耗比较大,并且压缩的text 无法分割和合并查询的效率最低,可以直接存储,加载数据的盯让速度最高.
sequencefile 存储空间消耗最大,压缩的文件可以分割和合并查询效率高,需要通过text文件转化来加载.
rcfile 存储空间最小,查询的效率最高 ,需要通过text文件转化来加载,加载的速度最低.

相比传统的行式存储引擎,列式存储引擎具有更高的压缩比,更少的IO操作而备受青睐(注:列式存储不是万能高效的,很多场景下行式存储仍更加高效),搭族尤其是在数据列(column)数很多,但每次操作仅针对若干列的情景,列式存储引擎的性价比更高。

G. hive存储parquet表

parquet格式的表在生产环境中经常被使用到,具有列式存储和压缩等特点,我们怎么在hive中存储parquet格式的表呢。

这里使用oracle的emp表

加载本地数据到hive表

执行查询

发现报错

emp使用parquet格式存储,其中imputFormat和outputFormat都是parquet的相关的,也前册就是我的imputFormat是parquent的,但是你传过来的是text,我不认识
我们看一下emp的相关信息,可以看到这里的都是parquet的format的,这是导致这次错误的原因。

这就导致了我们需要每次都先把text文件转化为parquet的文件,然后parquent表进行加载才可以,下面介绍官方推荐的使用方法。

查看emp_tmp的表的信息,这里可以看到,默认的是TextImputFormat和TextOutputFormat的。

然后加载数据到emp_tmp,查看数据,是正常显示的

然后现在把之前的emp里面的数据给删除

然后把emp_tmp表里面的数据加载到emp

查询一下,数据滑谈正常显示,这个方式使用起来还行,就是每次都需要对临时表进行操作,还是比较麻烦的。

感觉这个问题是经常出现,为什么会这样呢。这个和hive的版本有一定的关系。

可以看出hive官方将inputformat和outputformat进行了整合,这样使信悔碰用起来也是比较方便的。
但是可能有人想,那我修改inputformat不就行了,下面我介绍一下,看是否可以

创建emp2表,是parquet的存储格式的

修改inputformat 和serde,这里inputFormat是TextInputFormat,SEDE使用的是LazySimpleSerDe,Outputformat任然是Parquet的,这里需要带上。

查看emp2表的信息,如下图表示修改成功

加载数据到emp2

查询数据,执行成功

到这里,修改inputformat和serde的方法也介绍完成了,我们以为成功了,但是上hdfs上一看,文件还是txt格式的,所以通过修改inputformat和serde的方法不行。

肯定有人想使用这个方法
这个方法我也尝试了,但是返回的值全都是null

  在仅仅使用hive的时候,如果想把txt文件里面的数据保存到parquet表里面的话,可以使用建立临时表的方法,这个方法也是比较好操作的。
  但是其实如果使用spark,flink等分布式计算引擎的话,是可以直接的读取txt数据保存到parquet表里面的,框架帮我们做了转化。这种方式也是我们在工作中经常使用的。
  上面也介绍了修改inputformat和ser的方式,秀给inputformat是可以让txt文件里面的数据被读进来的,如果同时还修改了serde为lazysimpleserde的话,这个是把数据保存为text格式的,已经完全和parquet没有关系了,保存的文件还是txt格式的。仅修改inputformat,但是使用的serde是parquet的,但是数据进出不一致,也是有问题的。

H. Hive支持的数据类型

#整型

TINYINT — 微整型,只占用1个字节,只能存储0-255的整数。
SMALLINT– 小整型液卖,占用2个字节,存储范围–32768 到 32767。
INT– 整型,占用4个字节,存储范围-2147483648到2147483647。
BIGINT– 长整型,占用8个字节,存储范围-2^63到2^63-1。

#布尔型

BOOLEAN — TRUE/FALSE

#浮点型

FLOAT– 单精度浮点数。
DOUBLE– 双精度浮点数。

#字符串型

STRING– 不设定长度。

Structs:一组由任意数据类型组成的结构。比如,定义一个字段C的类型为STRUCT {a INT; b STRING},则可以使用a和C.b来获取其中的元素值;
Maps:和Java中的Map相同,即存储K-V对的;
Arrays:数组;

复杂数据类型的声明必须使用尖括号指明其中数肢颤据字段的类型。定义三列,每列对应一种复杂的数据类型,如下所示。

TEXTFILE //文本,默认值
SEQUENCEFILE // 二进制序列文件
RCFILE //列式存储格式文件 Hive0.6以后开始支历埋败持
ORC //列式存储格式文件,比RCFILE有更高的压缩比和读写效率,Hive0.11以后开始支持
PARQUET //列出存储格式文件,Hive0.13以后开始支持

#参考博客:

http://lxw1234.com/archives/2015/06/238.htm
http://www.cnblogs.com/zlslch/p/5659714.html
https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types

#

I. Hive优化之Hive的配置参数优化

Hive是大数据领域常用的组件之一,主要用于大数据离线数仓的运算,关于Hive的性能调优在日常工作和面试中是经常涉及的一个点,因此掌握一些Hive调优是必不可少的一项技能。影响Hive效率的主要因素有数据倾斜、数据冗余、job的IO以及不同底层引擎配置情况和Hive本身参数和HiveSQL的执行等。本文主要从建表配置参数方面对Hive优化进行讲解。

1. 创建一个普通表

table test_user1(id int, name string,code string,code_id string ) ROW FORMAT DELIMITED FIELDS TERMINATED  BY ',';

2. 查看这张表的信息

DESCRIBE FORMATTED  test_user1;

我们从该表的描述信息介绍建表时的一些可优化点。

2.1 表的文件数

numFiles表示表中含有的文件数,当文件数过多时可能意味着该表的小文件过多,这时候我们可以针对小文件的问题进行一些优化,HDFS本身提供了解决方案:

(1)Hadoop Archive/HAR:将小文件打包成大文件。

(2)SEQUENCEFILE格式:将大量小文件压缩成一个SEQUENCEFILE文件。

(3)CombineFileInputFormat:在map和rece处理之前组合小文件。

(4)HDFS Federation:HDFS联盟,使用多个namenode节点管理文件。

除此之外,我们还可以通过设置hive的参数来合并小文件。

(1)输入阶段合并

需要更改Hive的输入文件格式,即参数hive.input.format,默认值是org.apache.hadoop.hive.ql.io.HiveInputFormat,我们改成org.apache.hadoop.hive.ql.io.CombineHiveInputFormat。这样比起上面对mapper数的调整,会多出两个参数,分别是mapred.min.split.size.per.node和mapred.min.split.size.per.rack,含义是单节点和单机架上的最小split大小。如果发现有split大小小于这两个值(默认都是100MB),则会进行合并。具体逻辑可以参看Hive源码中的对应类。

(2)输出阶段合并

直接将hive.merge.mapfiles和hive.merge.mapredfiles都设为true即可,前者表示将map-only任务的输出合并,后者表示将map-rece任务的输出合并,Hive会额外启动一个mr作业将输出的小文件合并成大文件。另外,hive.merge.size.per.task可以指定每个task输出后合并文件大小的期望值,hive.merge.size.smallfiles.avgsize可以指定所有输出文件大小的均值阈值,默认值都是1GB。如果平均大小不足的话,就会另外启动一个任务来进行合并。

2.2 表的存储格式

通过InputFormat和OutputFormat可以看出表的存储格式是TEXT类型,Hive支持TEXTFILE, SEQUENCEFILE, AVRO, RCFILE, ORC,以及PARQUET文件格式,可以通过两种方式指定表的文件格式:

(1)CREATE TABLE ... STORE AS <file_format>:在建表时指定文件格式,默认是TEXTFILE

(2)ALTER TABLE ... [PARTITION partition_spec] SET FILEFORMAT <file_format>:修改具体表的文件格式

如果要改变创建表的默认文件格式,可以使用set

hive.default.fileformat=<file_format>进行配置,适用于所有表。同时也可以使用set

hive.default.fileformat.managed = <file_format>进行配置,仅适用于内部表或外部表。

扩展:不同存储方式的情况

TEXT,

SEQUENCE和

AVRO文件是面向行的文件存储格式,不是最佳的文件格式,因为即便只查询一列数据,使用这些存储格式的表也需要读取完整的一行数据。另一方面,面向列的存储格式(RCFILE,

ORC, PARQUET)可以很好地解决上面的问题。关于每种文件格式的说明,如下:

(1)TEXTFILE

创建表时的默认文件格式,数据被存储成文本格式。文本文件可以被分割和并行处理,也可以使用压缩,比如GZip、LZO或者Snappy。然而大部分的压缩文件不支持分割和并行处理,会造成一个作业只有一个mapper去处理数据,使用压缩的文本文件要确保文件不要过大,一般接近两个HDFS块的大小。

(2)SEQUENCEFILE

key/value对的二进制存储格式,sequence文件的优势是比文本格式更好压缩,sequence文件可以被压缩成块级别的记录,块级别的压缩是一个很好的压缩比例。如果使用块压缩,需要使用下面的配置:set

hive.exec.compress.output=true; set io.seqfile.compression.type=BLOCK

(3)AVRO

二进制格式文件,除此之外,avro也是一个序列化和反序列化的框架。avro提供了具体的数据schema。

(4)RCFILE

全称是Record Columnar File,首先将表分为几个行组,对每个行组内的数据进行按列存储,每一列的数据都是分开存储,即先水平划分,再垂直划分。

(5)ORC

全称是Optimized Row Columnar,从hive0.11版本开始支持,ORC格式是RCFILE格式的一种优化的格式,提供了更大的默认块(256M)

(6)PARQUET

另外一种列式存储的文件格式,与ORC非常类似,与ORC相比,Parquet格式支持的生态更广,比如低版本的impala不支持ORC格式。

配置同样数据同样字段的两张表,以常见的TEXT行存储和ORC列存储两种存储方式为例,对比执行速度。

TEXT存储方式

总结: 从上图中可以看出列存储在对指定列进行查询时,速度更快, 建议在建表时设置列存储的存储方式 。

2.3 表的压缩

对Hive表进行压缩是常见的优化手段,一些存储方式自带压缩选择,比如SEQUENCEFILE支持三种压缩选择:NONE,RECORD,BLOCK。Record压缩率低,一般建议使用BLOCK压缩;

ORC支持三种压缩选择:NONE,ZLIB,SNAPPY。我们以TEXT存储方式和ORC存储方式为例,查看表的压缩情况。

配置同样数据同样字段的四张表,一张TEXT存储方式,另外三张分别是默认压缩方式的ORC存储、SNAPPY压缩方式的ORC存储和NONE压缩方式的ORC存储,查看在hdfs上的存储情况:

TEXT存储方式

默认压缩ORC存储方式

SNAPPY压缩的ORC存储方式

NONE压缩的ORC存储方式

总结 :可以看到ORC存储方式将数据存放为两个block,默认压缩大小加起来134.69M,SNAPPY压缩大小加起来196.67M,NONE压缩大小加起来247.55M,TEXT存储方式的文件大小为366.58M,且默认block两种存储方式分别为256M和128M,ORC默认的压缩方式比SNAPPY压缩得到的文件还小,原因是ORZ默认的ZLIB压缩方式采用的是deflate压缩算法,比Snappy压缩算法得到的压缩比高,压缩的文件更小。 ORC不同压缩方式之间的执行速度,经过多次测试发现三种压缩方式的执行速度差不多,所以建议采用ORC默认的存储方式进行存储数据。

2.4 分桶分区

Num Buckets表示桶的数量,我们可以通过分桶和分区操作对Hive表进行优化:

对于一张较大的表,可以将它设计成分区表,如果不设置成分区表,数据是全盘扫描的,设置成分区表后,查询时只在指定的分区中进行数据扫描,提升查询效率。要注意尽量避免多级分区,一般二级分区足够使用。常见的分区字段:

(1)日期或者时间,比如year、month、day或者hour,当表中存在时间或者日期字段时,可以使用些字段。

(2)地理位置,比如国家、省份、城市等

(3)业务逻辑,比如部门、销售区域、客户等等

与分区表类似,分桶表的组织方式是将HDFS上的一张大表文件分割成多个文件。分桶是相对分区进行更细粒度的划分,分桶将整个数据内容按照分桶字段属性值得hash值进行区分,分桶可以加快数据采样,也可以提升join的性能(join的字段是分桶字段),因为分桶可以确保某个key对应的数据在一个特定的桶内(文件),所以巧妙地选择分桶字段可以大幅度提升join的性能。通常情况下,分桶字段可以选择经常用在过滤操作或者join操作的字段。

创建分桶表

create

table test_user_bucket(id int, name string,code string,code_id string )

clustered by(id) into 3 buckets ROW FORMAT DELIMITED FIELDS TERMINATED 

BY ',';

查看描述信息

DESCRIBE FORMATTED test_user_bucket

多出了如下信息

查看该表的hdfs

同样的数据查看普通表和分桶表查询效率

普通表

分桶表

普通表是全表扫描,分桶表在按照分桶字段的hash值分桶后,根据join字段或者where过滤字段在特定的桶中进行扫描,效率提升。

本文首发于: 数栈研习社

数栈是云原生—站式数据中台PaaS,我们在github上有一个有趣的开源项目: FlinkX

FlinkX是一个基于Flink的批流统一的数据同步工具,既可以采集静态的数据,比如MySQL,HDFS等,也可以采集实时变化的数据,比如MySQL

binlog,Kafka等,是全域、异构、批流一体的数据同步引擎,大家如果有兴趣,欢迎来github社区找我们玩~

J. Hive数据的序列化格式

1. TextFile

Hive数据表的默认格式,存储方式:行存储。
可使用Gzip,Bzip2等压缩算法压缩,压缩后的文件不支持split。
但在或高反序列化过程中,必须逐个字符判断是不是分隔符和行结束符,因此反序列化开销会比SequenceFile高几十倍。

2. SequenceFile

Hadoop API提供的一种二进制文件,以的形式序列化到文件中,存储方式:行存储。
支持三种压缩选择:NONE,RECORD,BLOCK。
Record压缩率低,一般建议使用BLOCK压缩。
优势是文件和hadoop api中的MapFile是相互兼容的。

3. RCFile

存储方式:数据按行分块,每块按列存储。结合了行存储和列存储的优点:
首先,RCFile 保证同一行的数据位于同一节点,因此元组重构的开销很低;孙慎
其次,像列存储一样,RCFile 能够利用列维度的数据压缩,并且能跳过不必要的列读取;

RCFile的一个行组包括三个部分:
第一部分是行组头部的【同步标识】,主要用于分隔 hdfs 块中的两个连续行组
第二部分是行组的【元数据头部】,用于存储行组单元的信息,包括行组中的记录数、每个列的字节数、列中每个域的字节数
第三部分是【表格数据段】,即实际的列存储数据。在该部分中,同一列的所有域顺序存储。

从图可以看出,首先存储了列 A 的所有域,然后存储列 B 的所有域等。

数据追加:RCFile 不支持任意方式的数据写操作,仅提供一种追加接口,这是因为底层的 HDFS当前仅仅支持数据追加写文件尾部。 

行组大小:行组变大有助于提高数据压缩的效率,但是可能会损害数据的读取性能,因为这样增加了 Lazy 解压性能的消耗。而且行组变大会占用更多的内存,这会影响并发执行的其他MR作业。 考虑到存储空间和查询效率两个方面,Facebook 选择 4MB 作为默认的行组大小,当然也允许用户自行选择参数进行配置。

4. ORCFile

存储方式:数据按行分块 每块按照列存储
压缩快 快速列存取
效率比rcfile高,是rcfile的改良版本

5. 自定义格式

用户可以通过实现inputformat和 outputformat来自定义输入输出格式。

6. 总结:

数据仓库的特点:一次写入、多次读取,因此,整体来看, ORCFile 相比其他格式具有较明显的优势。
TextFile 默认格式,加载速度最快,可以采用Gzip、bzip2等进衫凯尺行压缩,压缩后的文件无法split,即并行处理
SequenceFile 压缩率最低,查询速度一般,三种压缩格式NONE,RECORD,BLOCK
RCfile 压缩率最高,查询速度最快,数据加载最慢。

#

热点内容
内置存储卡可以拆吗 发布:2025-05-18 04:16:35 浏览:336
编译原理课时设置 发布:2025-05-18 04:13:28 浏览:378
linux中进入ip地址服务器 发布:2025-05-18 04:11:21 浏览:612
java用什么软件写 发布:2025-05-18 03:56:19 浏览:32
linux配置vim编译c 发布:2025-05-18 03:55:07 浏览:107
砸百鬼脚本 发布:2025-05-18 03:53:34 浏览:945
安卓手机如何拍视频和苹果一样 发布:2025-05-18 03:40:47 浏览:742
为什么安卓手机连不上苹果7热点 发布:2025-05-18 03:40:13 浏览:803
网卡访问 发布:2025-05-18 03:35:04 浏览:511
接收和发送服务器地址 发布:2025-05-18 03:33:48 浏览:372