精华内容
下载资源
问答
  • hive 的存储格式

    2019-04-22 21:11:34
    默认存储格式textfile textfile:普通文本文件存储,不压缩 sequencefile:hive为用户提供二进制存储,本身就压缩,不能使用load方式加载数据 rcfile:hive提供行列混合存储,hive在该格式下,会尽量将附近...

    默认存储格式textfile


    textfile:普通的文本文件存储,不压缩
    sequencefile:hive为用户提供的二进制存储,本身就压缩,不能使用load的方式加载数据
    rcfile:hive提供的行列混合存储,hive在该格式下,会尽量将附近的行和列得块存储到一起,仍然是压缩格式,查询效率比较高
    orc:orf是rcfile的升级版

    首先是默认的:textfile

    create table if not exists text2(
    uid int,
    uname string,
    sex string,
    age int,
    step string
    )
    row format delimited
    fields terminated by ','
    stored as textfile
    ;

    加载数据:

    load data local inpath '/root/students.txt' into table text2;

    然后创建存储格式为sequencefile的

    create table if not exists seq1(
    uid int,
    uname string,
    sex string,
    age int,
    step string
    )
    row format delimited
    fields terminated by ','
    stored as sequencefile
    ;

    加载数据:

    load data local inpath '/root/students.txt' into table seq1;

    注意,这种方式不能load加载数据的!

    提示:

    需要用insert into的方式来加载数据:

    insert into seq1
    select * from text2;

    结果为:

    然后是rcfile格式的:

    create table if not exists rc1(
    uid int,
    uname string,
    sex string,
    age int,
    step string
    )
    row format delimited
    fields terminated by ','
    stored as rcfile
    ;

    加载数据的时候也是不能load数据

    不可以使用这种方式加载数据
    load data local inpath '/root/students.txt' into table rc1;#报错!!!

    应该使用insert into的方式加载数据

    insert into rc1
    select * from text2;

     

     

     

     

    展开全文
  • Hive的存储格式

    2017-08-07 21:19:59
    1.Hive使用文件格式  : SEQUENCEFILE//序列化  | TEXTFILE -- (Default, depending on hive.default.fileformat configuration)  | RCFILE -- (Note: Available in Hive 0.6.0 and later) Row存储 ...
    1.Hive使用的文件格式
      : SEQUENCEFILE//序列化
      | TEXTFILE    -- (Default, depending on hive.default.fileformat configuration)
      | RCFILE      -- (Note: Available in Hive 0.6.0 and later)  Row存储  Columnar字段也就是列
      | ORC         -- (Note: Available in Hive 0.11.0 and later) O optimized 优化
      | PARQUET     -- (Note: Available in Hive 0.13.0 and later)
      | AVRO        -- (Note: Available in Hive 0.14.0 and later)


    可以将默认TEXTFILE 文件格式的表映射完成之后,另外保存成其他格式ORC PARQUET


    create table if not exists file_text(
    t_time string,
    t_url string,
    t_uuid string,
    t_refered_url string,
    t_ip string,
    t_user string,
    t_city string
    )
    row format delimited fields terminated by '\t'
    stored  as  textfile;


    load data local inpath '/home/user01/page_views.data' into table file_text;


    //默认的TEXTFILE格式大小
    dfs -du -s -h /user/hive/warehouse/db01.db/file_text;
    18.1 M  18.1 M  /user/hive/warehouse/db01.db/file_text


    //存储为ORC格式
    create table if not exists  file_orc row format delimited fields terminated by '\t' stored as ORC as select *  from file_text;


    dfs -du -s -h /user/hive/warehouse/db01.db/file_orc;
    2.6 M  2.6 M  /user/hive/warehouse/db01.db/file_orc


    //存储为parquet格式
    create table if not exists  file_parquet row format delimited fields terminated by '\t' stored as PARQUET as select *  from file_text;




     dfs -du -s -h  /user/hive/warehouse/db01.db/file_parquet;
    13.1 M  13.1 M  /user/hive/warehouse/db01.db/file_parquet


    【注意:】
    1.对于具体格式在创建表时一定要指定stored as orc/parquet/textfile
    2.插入数据的时候不能使用load加载数据



     
    展开全文
  • hive的存储格式

    2010-12-06 13:05:20
    hive有textFile,SequenceFile,RCFile三种文件格式。     其中textfile为默认格式,建表时不指定默认为这个格式,导入数据时会直接把数据文件拷贝到hdfs上不进行处理。   SequenceFile,RCFile格式的表不能...

    hive有textFile,SequenceFile,RCFile三种文件格式。

     

     

    其中textfile为默认格式,建表时不指定默认为这个格式,导入数据时会直接把数据文件拷贝到hdfs上不进行处理。

     

    SequenceFile,RCFile格式的表不能直接从本地文件导入数据,数据要先导入到textfile格式的表中,然后再从textfile表中用insert导入到SequenceFile,RCFile表中。

    写道
    create table zone0000tf(ra int, dec int, mag int) row format delimited fields terminated by '|';
    create table zone0000rc(ra int, dec int, mag int) row format delimited fields terminated by '|' stored as rcfile;

    load data local inpath '/home/cq/usnoa/zone0000.asc ' into table zone0000tf;
    insert overwrite table zone0000rc select * from zone0000tf;(begin a job)

     

    File Format

    TextFile

    SequenceFIle

    RCFFile

    Data type

    Text Only

    Text/Binary

    Text/Binary

    Internal Storage Order

    Row-based

    Row-based

    Column-based

    Compression

    File Based

    Block Based

    Block Based

    Splitable

    YES

    YES

    YES

    Splitable After Compression

    No

    YES

    YES

     

     

     

     

    展开全文
  • 1、hive的存储格式 hive的存储格式分为4种,分别是TEXTFILE、SEQUENCEFILE、RCFILE、ORCFILE(0.11以后出现) 其中TEXTFILE为默认格式,建表时不指定默认为这个格式,导入数据时会直接把数据文件拷贝到hdfs上不进行...

    一、hive的存储格式

    hive的存储格式分为4种,分别是TEXTFILE、SEQUENCEFILE、RCFILE、ORCFILE(0.11以后出现)

    其中TEXTFILE为默认格式,建表时不指定默认为这个格式,导入数据时会直接把数据文件拷贝到hdfs上不进行处理;

    SEQUENCEFILE,RCFILE,ORCFILE格式的表不能直接从本地文件导入数据,数据要先导入到textfile格式的表中, 然后再从表中用insert导入SequenceFile,RCFile,ORCFile表中。

    1:TEXTFILE格式

    默认格式,数据不做压缩,磁盘开销大,数据解析开销大。
    可结合Gzip、Bzip2使用(系统自动检查,执行查询时自动解压),但使用这种方式,hive不会对数据进行切分,从而无法对数据进行并行操作。

    2:SEQUENCEFILE格式
    SequenceFile是Hadoop API 提供的一种二进制文件,它将数据以二进制的形式序列化到文件中。这种二进制文件内部使用Hadoop 的标准的Writable 接口实现序列化和反序列化。它与Hadoop API中的MapFile 是互相兼容的。Hive 中的SequenceFile 继承自Hadoop API 的SequenceFile,不过它的key为空,使用value 存放实际的值, 这样是为了避免MR 在运行map 阶段的排序过程。

    3:RCFILE格式
    RCFILE是一种行列存储相结合的存储方式。首先,其将数据按行分块,保证同一个record在一个块上,避免读一个记录需要读取多个block。其次,块数据列式存储,有利于数据压缩和快速的列存取。

    3:RCFILE格式
    RCFILE是一种行列存储相结合的存储方式。首先,其将数据按行分块,保证同一个record在一个块上,避免读一个记录需要读取多个block。其次,块数据列式存储,有利于数据压缩和快速的列存取。

    create table if not exists user_info_rc(id bigint,username string,password string,sex string) row format delimited fields terminated by ‘\t’ stored as rcfile;
    insert overwrite table user_info_rc select * from user_info_t;

    4:ORC格式
    Orcfile(Optimized Row Columnar)是hive 0.11版里引入的新的存储格式,是对之前的RCFile存储格式的优化.
    每个Orc文件由1个或多个stripe组成,每个stripe250MB大小,这个Stripe实际相当于之前的rcfile里的RowGroup概念,不过大小由4MB->250MB,这样应该能提升顺序读的吞吐率。每个Stripe里有三部分组成,分别是Index Data,Row Data,Stripe Footer:
    1,Index Data:一个轻量级的index,默认是每隔1W行做一个索引。这里做的索引应该只是记录某行的各字段在Row Data中的offset,据说还包括每个Column的max和min值,具体没细看代码。
    2,Row Data:存的是具体的数据,和RCfile一样,先取部分行,然后对这些行按列进行存储。与RCfile不同的地方在于每个列进行了编码,分成多个Stream来存储,具体如何编码在下一篇解析里会讲。
    3,Stripe Footer:存的是各个Stream的类型,长度等信息。
    每个文件有一个File Footer,这里面存的是每个Stripe的行数,每个Column的数据类型信息等;每个文件的尾部是一个PostScript,这里面记录了整个文件的压缩类型以及FileFooter的长度信息等。在读取文件时,会seek到文件尾部读PostScript,从里面解析到File Footer长度,再读FileFooter,从里面解析到各个Stripe信息,再读各个Stripe,即从后往前读。

    总结:

    textfile 存储空间消耗比较大,并且压缩的text 无法分割和合并 查询的效率最低,可以直接存储,加载数据的速度最高

    sequencefile 存储空间消耗最大,压缩的文件可以分割和合并 需要通过text文件转化来加载

    rcfile 存储空间小,查询的效率高 ,需要通过text文件转化来加载,加载的速度最低

    orc 存储空间最小,查询的最高 ,需要通过text文件转化来加载,加载的速度最低(个人建议使用orc)

    在实际操作过程中另外3种都需要通过textfile临时存储导入数据

    展开全文
  • 0. 说明  Hive 的存储格式 | textfile |sequencefile |rcfile...1. Hive的存储格式  1.1 textfile  行式存储  1.2 sequencefile  二进制的k-v对,行式存储  配置块压缩  SET hive.exec.compress.o...
  • Hive的存储格式与对比 官网:https://cwiki.apache.org/confluence/display/Hive/FileFormats 对于很多的东西,还是你要多多观看官网,更加权威, 一:行式存储和列式存储 在这之前先补充一个概念: 二:TestFile ...
  • hive的存储格式TextFile、RCFile、ORC

    千次阅读 2019-07-01 10:37:57
    hived的存储格式TextFile、RCFile...通过下面的文件我们看出hive的存储格式是一共有六种,每一种都是由自己的规则。 file_format: : SEQUENCEFILE | TEXTFILE -- (Default, depending on hive.default.fileformat...
  • Hive的存储格式 08

    2019-03-25 16:48:26
    1. Hive的数据存储格式 Hive支持的存储数的格式主要有:TEXTFILE(行式存储) 、SEQUENCEFILE(行式存储)、ORC(列式存储)、PARQUET(列式存储)。 1.1 列式存储和行式存储 上图左边为逻辑表,右边第一个为行式存储...
  • Hive的存储格式对比

    2019-04-20 00:35:25
    在生产中可以通过Hive文件格式及查询速度对比来确定使用哪种文件格式,以节省空间和提高查询速度;官方参考文档:https://cwiki.apache.org/confluence/display/HIVE结论:压缩效果:最好是:bzip2;bzip2...
  • hive当中的存储格式 数据的存储格式主要分为两大类,一类是行式存储,一类是列式存储 行式存储:TextFile,SequenceFile。 列式存储:Parquet ,Orc。 第一种文件处处格式:textFile 行式存储 第四种:sequenceFile ...
  • 经过分析之后通过insert overwrite select 将我们分析出来结果插入到另一张临时表里面就可以使用parquet或者orc这些列式存储格式 存储与压缩相结合:存储格式和压缩方式没有关系 实际工作当中,一般存储格式与压缩...
  • hive的存储格式及压缩

    2019-04-16 22:15:49
    行式存储与列式存储 行式存储 特点: 保证一条记录里面所有字段能够存放在同一个hdfsblock里 优点: 当查询所有(select * from tbname)时,能直接查询出来 缺点: 不同列字段类型不同,压缩性能差,...
  • Hive的默认存储格式是文本文件格 式,这个也可以通过可选的子句STORED AS TEXTFILE显式指定,同时用户还可以在创 建表时指定各种各样的分隔符。这里我们重新展示下之前讨论过的那个ods.ods_login表:CREATE TABLE ...
  • 1.存储格式  textfile  rcfile  orc  parquet 2.存储方式  按行存储  -》textfile  按列存储  -》parquet 3.压缩比   4.存储textfile原文件    并加载数据   5.大小   6....
  • 文件格式 Textfile SequenceFile RCFile ORCFile Parquet Avro
  • 尝试了cdh分布式下的hive的配置,及sqoop的配置,才发现和伪分布式的单节点的部署一模一样,并没有其他要注意的东西,就那个,这里就不详细写了,主要记记,常用sqoop的语句,和其他hive调优需要注意的地方 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,862
精华内容 744
关键字:

hive的存储格式