精华内容
下载资源
问答
  • 大端存储格式与小端存储格式

    千次阅读 2017-03-14 19:28:36
    大端存储格式与小端存储格式的区别。
    1.大端存储格式即字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。与大端存储格式相反,在小端存储格式中,低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。
    
    例如,32bit宽的数0x12345678 (十六进制)在小端模式CPU内存中的存放方式是(假设地址从0x4000开始)为:

    内存地址     0x4000 0x4001 0x4002 0x4003
    内容存放 0x78 0x56 0x34 0x12
    在大端模式中的存放方式是
    内存地址     0x4000 0x4001 0x4002 0x4003
    内容存放 0x12 0x34 0x56 0x78
    小端模式与大端方式的区别是字中的字节的存储顺序不同,而字与字之间的存储顺序是相同的。通常x86结构是小端模式,而sun的SPARC采用大端模式。

    展开全文
  • YUV的存储格式

    千次阅读 2021-04-03 20:43:07
    YUV4:2:0存储格式 分层存储,按Y->U->V顺序,是最常见的存储格式。如下图,按颜色对应。 YUV存储格式 planar(平面) I420:YYYYYYYY UU VV => YUV420p YV12:YYYYYYYY VV UU => YUV420p packed(打包...

    YUV4:2:0存储格式

    分层存储,按Y->U->V顺序,是最常见的存储格式。如下图,按颜色对应。

    在这里插入图片描述
    YUV存储格式

    planar(平面)

    I420:YYYYYYYY UU VV => YUV420p
    YV12:YYYYYYYY VV UU => YUV420p

    packed(打包)

    NV12:YYYYYYYY UVUV => YUV420sp
    NV21:YYYYYYYY VUVU => YUV420sp

    注意:ios系统一般使用YV12格式;android系统一般使用NV21格式。可以对yuv进行常见操作的库:libyuv。

    未编码视频的YUV码流

    RGB码流 = 分辨率(宽 x 高) x 3 x 帧率
    YUV码流 = 分辨率(宽 x 高) x 1.5 x 帧率
    码流在网络传输中以bit位为单位,1M一般指大小为1M bit

    参考资料

    展开全文
  • Hive存储格式

    千次阅读 2019-06-05 11:08:51
    Hive的四种存储格式;TextFile、SequenceFile、RCFile、Parquet 基于行存储:TextFile和SequenceFile 基于列存储:Parquet 基于行列混合的思想:RCFile——先按行把数据划分成N个row group,在row group中对每个列...

    Hive的四种存储格式;TextFile、SequenceFile、RCFile、Parquet

    • 基于行存储:TextFile和SequenceFile
    • 基于列存储:Parquet
    • 基于行列混合的思想:RCFile——先按行把数据划分成N个row group,在row group中对每个列分别进行存储

    列式存储和行式存储的比较

     

     

    优点

    缺点
    行式存储 一行数据是一条记录,放在同一个block块中 只查询几个列时,也会读取整行的数据,当数据量大时,影响性能
      方便进行insert/update操作 不同类型的数据放在同一个block中,导致不容易获得一个极高的压缩比,也就是空间利用率不高
        不是所有的列都适合作为索引
    列式存储 查询时只有涉及到的列才会被查询 insert/update不方便
      同类型数据存放在同一个block块里面,压缩性能好,节省存储空间、计算内存和cpu 不适合扫描数据量小的数据
      任何列都可以作为索引 查询全表时需要数据重组

     

     

     

     

     


     

     

     

     

    TextFile

           Hive默认格式,数据不做压缩,磁盘开销大,数据解析开销大

     

    SequenceFile

           SequenceFile是Hadoop API 提供的一种二进制文件,它将数据以<key,value>的形式序列化到文件中。这种二进制文件内部       使用Hadoop 的标准的Writable 接口实现序列化和反序列化。

     

    RCFile

           RCFile是Hive推出的一种专门面向列的数据格式。 它遵循“先按列划分,再垂直划分”的设计理念。当查询过程中,针对它并不关心的列时,它会在IO上跳过这些列。需要说明的是,RCFile在map阶段从 远端拷贝仍然是拷贝整个数据块,并且拷贝到本地目录后RCFile并不是真正直接跳过不需要的列,并跳到需要读取的列, 而是通过扫描每一个row group的头部定义来实现的,但是在整个HDFS Block 级别的头部并没有定义每个列从哪个row group起始到哪个row group结束。所以在读取所有列的情况下,RCFile的性能反而没有SequenceFile高。

     

    Parquet

         Parquet是不跟任何数据处理技术绑定在一起的,可以用于多种数据处理框架

     

    hive的数据存储 
    1、Hive中所有的数据都存储在 HDFS 中,没有专门的数据存储格式(可支持Text,SequenceFile,ParquetFile,RCFILE等) 
    2、只需要在创建表的时候告诉 Hive 数据中的列分隔符和行分隔符,Hive 就可以解析数据。 
    3、Hive 中包含以下数据模型:DB、Table,External Table,Partition,Bucket。 
    db:在hdfs中表现为${hive.metastore.warehouse.dir}目录下一个文件夹 
    table:在hdfs中表现所属db目录下一个文件夹 
    external table:外部表, 与table类似,不过其数据存放位置可以在任意指定路径 
    普通表: 删除表后, hdfs上的文件都删了 
    External外部表删除后, hdfs上的文件没有删除, 只是把文件删除了 
    partition:在hdfs中表现为table目录下的子目录 
    bucket:桶, 在hdfs中表现为同一个表目录下根据hash散列之后的多个文件, 会根据不同的文件把数据放到不同的文件中

     

    展开全文
  • hive存储格式

    千次阅读 2016-05-07 20:50:10
    hive文件的存储格式:textfile、sequencefile、rcfile、自定义格式

    hive文件的存储格式:textfile、sequencefile、rcfile、自定义格式

    1. textfile
        textfile,
    即是文本格式,默认格式,数据不做压缩,磁盘开销大,数据解析开销大

        对应hive API为org.apache.hadoop.mapred.TextInputFormatorg.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat

    2.sequencefile
     
    sequencefile,是Hadoop提供的一种二进制文件格式是Hadoop支持的标准文件格式(其他生态系统并不适用),
      可以直接将
    对序列化到文件中,所以sequencefile文件不能直接查看,可以通过Hadoop fs -text查看。
      具有使用方便,可分割,可压缩,可进行切片。压缩支持
    NONE, RECORD, BLOCK(优先)等格式,可进行切片。

         对应hive API为org.apache.hadoop.mapred.SequenceFileInputFormat和org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat
     

    3.rcfile
     大多数的
    Hadoophive存储是行式储存,在大多数环境下比较高效,因为大多数表具有的字段个数都不会很大,
     
    且文件按块压缩对于需要处理重复数据的情况比较高效,同时处理和调试工具(moreheadawk)都能很好的适应行式存储的数据。
       但当需要操作的表有成百上千个字段,而操作只有一小部分字段时,这往往会造成很大的浪费。
     而此时若是采取列式存储只操作需要的列便可以大大提高性能。

        rcfile 是一种行列存储相结合的存储方式,先将数据按行分块再按列式存储,保证同一条记录在一个块上,避免读取多个块,
     有利于数据压缩和快速进行列存储。

         对应hive API为org.apache.hadoop.hive.ql.io.RCFileInputFormatorg.apache.hadoop.hive.ql.io.RCFileOutputFormat

     行存储

        基于Hadoop系统行存储结构的优点在于快速数据加载和动态负载的高适应能力,这是因为行存储保证了相同记录的所有域

        都在同一个集群节点,即同一个HDFS块。不过,行存储的缺点也是显而易见的,它不能支持快速查询处理,

        因为当查询仅仅针对多列表中的少数几列时,它不能跳过不必要的列读取;此外由于混合着不同数据值的列,

        行存储不易获得极高的压缩比,即空间利用率不易大幅提高。尽管通过熵编码和利用列相关性能够获得一个较好的压缩比,

        但是复杂数据存储实现会导致解压开销增大。
       

      下图显示了在HDFS上按照列组存储表格的例子。在图中,列A和列B存储在同一列组,而列C和列D分别存储在单独的列组。

      查询时列存储能够避免读不 必要的列,并且压缩一个列中的相似数据能够达到较高的压缩比。然而由于元组重构的较高开销,

      它并不能提供基于Hadoop系统的快速查询处理。列存储不 能保证同一记录的所有域都存储在同一集群节点,

      记录的4个域存储在位于不同节点的3HDFS块中。因此,记录的重构将导致通过集群节 点网络的大量数据传输。

      尽管预先分组后,多个列在一起能够减少开销,但是对于高度动态的负载模式,它并不具备很好的适应性。

      除非所有列组根据可能的查询预 先创建,否则对于一个查询需要一个不可预知的列组合,一个记录的重构或许需要2个或

      多个列组。再者由于多个组之间的列交叠,列组可能会创建多余的列数据存 储,这导致存储利用率的降低。

      

      下图是一个 HDFS块内RCFile方式存储的例子。RCFileRecord Columnar File)存储结构遵循的是先水平划分,

      再垂直划分的设计理念,它结合了行存储和列存储的优点:首先,RCFile保证同一行 的数据位于同一节点,

      因此元组重构的开销很低;其次,像列存储一样,RCFile能够利用列维度的数据压缩,并且能跳过不必要的列读取。

      

    四.ORCfile
       
    orcfile是对rcfile的优化,可以提高hive的读、写、数据处理性能,提供更高的压缩效率。和RCFile格式相比,

        ORC File格式有以下优点:
        (1)、每个task只输出单个文件,这样可以减少NameNode的负载;
        (2)、支持各种复杂的数据类型,比如: datetime, decimal, 以及一些复杂类型(struct, list, map, and union)
        (3)、在文件中存储了一些轻量级的索引数据;
        (4)、基于数据类型的块模式压缩:

       1).integer类型的列用行程长度编码(run-length encoding);

              2).String类型的列用字典编码(dictionaryencoding)
        (5)、用多个互相独立的RecordReaders并行读相同的文件;
        (6)、无需扫描markers就可以分割文件;
        (7)、绑定读写所需要的内存;
        (8)metadata的存储是用 Protocol Buffers的,所以它支持添加和删除一些列。
        ORC
    File
    文件结构
         ORC File
    包含一组组的行数据,称为stripes,除此之外,ORCFilefile footer还包含一些额外的辅助信息。

      在ORC File文件的最后,
      有一个被称为
    postscript的区,它主要是用来存储压缩参数及压缩页脚的大小。
          
    在默认情况下,一个stripe的大小为250MB。大尺寸的stripes使得从HDFS读数据更高效。
      在file footer里面包含了该ORC File文件中stripes的信息,每个stripe中有多少行,以及每列的数据类型。
      当然,它里面还包含了列级别的一些聚合的结果,比
    如:count, min, max, and sum。下图显示出可ORC File文件结构:
     

      Stripe结构

      从上图我们可以看出,每个Stripe都包含index datarowdata以及stripe footerStripefooter包含流位置的目录;
     
    Row data在表扫描的时候会用到。Index data包含每列的最大和最小值以及每列所在的行。行索引里面提供了偏移量,
      它可以跳到正确的压缩块位置。具有相对频繁的行索引,使得在
    stripe中快 速读取的过程中可以跳过很多行,

      尽管这个stripe的大小很大。
      在默认情况下,最大可以跳过
    10000行。拥有通过过滤谓词而跳过大量的行的能力,你可 以在表的 secondarykeys 进行排序,
      从而可以大幅减少执行时间。比如你的表的主分区是交易日期,那么你可以对次分区(
    statezip code以及last name

      进行排序。

    五.自定义格式

      若当前数据文件格式不能被当前hive所识别时,可以自定义文件格式,

      用户可通过实现InputFormatOutputFormat来自定义输入输出格式。

    六.总结

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

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

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

        orcfile, rcfile较有优势,orcfile,rcfile具备相当于行存储的数据加载和负载适应能力,扫描表时避免不必要的列读取,
     拥有比其他结构更好的性能,而使用列维度的压缩,能有效提升存储空间利用率。

     但orcfile, rcfile数据加载是性能损失较大,但由于hdfs一次写入多次读写,所以损失可以接受。

        SequenceFile,ORCFile(ORC)rcfile格式的表不能直接从本地文件导入数据,数据要先导入到textfile格式的表中,
     然后再从
    textfile表中导入到SequenceFile,ORCFile(ORC)rcfile表中。

    展开全文
  • hdfs文件存储格式

    千次阅读 2018-11-13 10:36:00
    hdfs 文件存储格式 hdfs 文件存储格式分为两大类 行存储和列存储 行存储,将一整行存储在一起,是一种连续的存储方式,例如SequenceFile,MapFile,缺点是如果只需要行中的某一列也必须把整行都读入内存当中 列存储 列...
  • HFile存储格式

    千次阅读 2015-08-21 14:10:00
    Table of ContentsHFile存储格式Block块结构HFile存储格式HFile是参照谷歌的SSTable存储格式进行设计的,所有的数据记录都是通过它来完成持久化,其内部主要采用分块的方式进行存储,如图所示:每个HFile内部包含...
  • hive存储格式parquet

    千次阅读 2019-07-26 16:53:20
    创建存储格式为parquet的hive表: CREATE TABLE parquet_test ( id int, str string, mp MAP<STRING,STRING>, lst ARRAY<STRING>, strct STRUCT<A:STRING,B:STRING>) PARTITIONED BY...
  • hive复制表 存储格式转换

    千次阅读 2018-02-06 14:34:34
    在之前的博客中已经介绍过hive的四...本文以ORCFile存储格式为例,详细介绍hive上转换表的存储格式的步骤和需要注意的地方。 1、 查看需要转换的原表信息 show create table 表名; 这边的tmp_mf
  • HEIF图片存储格式探秘

    千次阅读 2017-12-11 18:30:43
    HEIF图片存储格式
  • Hive存储格式对比

    千次阅读 2018-08-21 14:37:57
    Apache Hive支持Apache Hadoop中使用的几种熟悉的文件格式,如TextFile,RCFile,SequenceFile,... 在建表时使用STORED AS (TextFile|RCFile|SequenceFile|AVRO|ORC|Parquet)来指定存储格式。 TextFile每一行都...
  • hadoop 数据存储格式

    千次阅读 2017-12-04 13:36:08
    一般而言,存储格式分为列式存储和行存储,对于hadoop来时,列式存储有parquet,rcfile,orcfile等,行存储有SequenceFile,MapFile,Avro Datafile等hive中的使用 1.orc create table test_orc( ... ) ...
  • hive 中orc存储格式

    千次阅读 2019-07-02 18:00:03
     ORC的全称是(Optimized Row Columnar),ORC文件格式是一种Hadoop生态圈中的列式存储格式,它的产生早在2013年初,最初产生自Apache Hive,用于降低Hadoop数据存储空间和加速Hive查询速度。和Parquet类似,它并不是...
  • Hadoop文件的存储格式

    千次阅读 2018-04-01 13:48:07
    sequence文件存储格式txt纯文本格式,若干行记录。默认用字符编码存储SequenceFile格式(顺序文件格式,可进行切割)key-value 格式进行存储,最终形成的是一个二进制文件, 需用hadoop提供的api进行写入存储。编写 ...
  • vardecimal 存储格式

    千次阅读 2013-06-13 14:33:38
    SQL Server的decimal和numeric数据类型 有一种新的压缩存储格式 vardecimal。放在可变长存储区域中。  vardecimal存储格式由三个部分   sign (1 bit), exponent (7 bits), and mantissa (1–19 ...
  • HIve的文件存储格式有四种:TEXTFILE 、SEQUENCEFILE、ORC、PARQUET,前面两种是行式存储,后面两种是列式存储;所谓的存储格式就是在Hive建表的时候指定的将表中的数据按照什么样子的存储方式,如果指定了A方式,...
  • Facebook于是提出了集行存储和列存储的优点于一身的RCFile文件存储格式,据说当前在Facebook公司内部,其数据仓库的文件存储格式都是RCFile,另外盛大内部的数据仓库使用的也是RCFile文件存储格式。   我们现在...
  • html5本地存储localStorage 存储json对象存储格式问题 localStorage.setItem(att)会自动将att存储成字符串形式,如: var arr=[1,2,3];localStorage.setItem("temp",arr);typeof localStorage.getItem("temp...
  • Hive-RCFile文件存储格式

    千次阅读 2016-06-03 23:14:20
    RCFile的文件存储格式,可以和ORC格式进行对比
  • 大数据里的存储格式

    千次阅读 2019-04-06 16:30:38
    hive里的存储格式 hive里默认存储是textfile hive (default)> set hive.default.fileformat; hive.default.fileformat=TextFile 数据表存储方式如下指定 hive (default)> create table t_2(id int) ...
  • 稀疏矩阵存储格式

    千次阅读 2016-08-08 09:52:21
    当运算数据数量很大且稀疏的时候,使用稀疏的数据存储格式可以节省大量的存储空间且加快计算速度。本文介绍三种比较常见的稀疏矩阵表示方式:COO(Coordinate Format坐标表示),CSR(Compressed Sparse Row行压缩)...
  • hive rcfile存储格式

    万次阅读 2014-08-05 16:51:32
    Hive的三种文件格式:TEXTFILE、SEQUENCEFILE、RCFILE中,TEXTFILE和SEQUENCEFILE的存储格式都是基于行存储的,RCFILE是基于行列混合的思想,先按行把数据划分成N个row group,在row group中对每个列分别进行存储...
  • hive表的存储格式; ORC格式的使用

    万次阅读 2016-06-17 20:02:22
    hive表的源文件存储格式有几类: 1、TEXTFILE 默认格式,建表时不指定默认为这个格式,导入数据时会直接把数据文件拷贝到hdfs上不进行处理。源文件可以直接通过hadoop fs -cat 查看 2、SEQUENCEFILE 一种Hadoop ...
  • hive四种存储格式介绍与分析比较

    万次阅读 2018-02-06 10:29:35
    一、四种存储格式介绍 1、TestFile TextFile文件不支持块压缩,默认格式,数据不做压缩,磁盘开销大,数据解析开销大。这边不做深入介绍。 2、RCFile Record Columnar的缩写。是Hadoop中第一个列文件格式。...
  • Hive中的存储格式

    千次阅读 2018-03-13 16:57:54
    上一篇博客我们详细的介绍了压缩的使用,本文将详细介绍Hive中的存储格式,下面列出官方给出的存储格式: [STORED AS file_format] file_format: : SEQUENCEFILE | TEXTFILE -- (Default, depending on hive....
  • Hive文件存储格式查询性能的比较

    千次阅读 2018-04-09 21:50:37
    一、Hive的文件存储格式 Hive总共支持以下几种文件存储格式: Text File SequenceFile RCFile Avro Files ORC Files Parquet Custom INPUTFORMAT and OUTPUTFORMAT 这里,我们主要比较Text File,ORC File,...
  • Hive-ORC文件存储格式

    万次阅读 2016-05-31 00:18:15
    本文分析Hive中ORC文件存储格式的原理和实际案例
  • 遥感图像存储格式

    千次阅读 2017-05-20 12:55:20
    在我们利用envi进行数据读取或写出时,经常可以看到要求我们设置数据的存储格式,大致分为三种,即BSQ、BIL、BIP。这个是按照数据的文件内部读写格式来划分的。 其中,BSQ是按波段保存,也就是一个波段保存后接着...
  • SparkSQL中的Parquet存储格式总结

    千次阅读 2019-10-31 15:37:04
    Parquet是一种列式存储格式,很多种处理引擎都支持这种存储格式,也是sparksql的默认存储格式。Spark SQL支持灵活的读和写Parquet文件,并且对parquet文件的schema可以自动解析。当Spark SQL需要写成Parquet文件时,...
  • HIVE文件存储格式

    千次阅读 2013-09-06 10:37:14
    HIVE文件存储格式 Hive文件存储格式包括以下几类: TEXTFILE SEQUENCEFILE RCFILE ORCFILE 其中textfile为默认格式,建表时不指定默认为这个格式,导入数据时会直接把数据文件拷贝到hdfs上不进行处理。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 87,154
精华内容 34,861
关键字:

存储格式