展开

关键词

Hive ORC文件格式存储与测试(Malformed ORC file解决)

采用建表过程中,直接:stored as orc,就可以指定。 然而用传统文本文件导入的方式,再进行查询测试,如select count(*) from table XX. 则会出现:Failed with exception java.io.IOException:java.io.IOException: Malformed ORC file的问题。 找到解决办法,由于TXT文档导入,无法生成ORC数据结构,所以需要先导入临时表,再从临时表中再导到ORC表中。

36810

Hive ORC文件格式

ORC文件格式 在Hive 0.11.0版本引入此功能 ORC 是 Optimized Row Columnar 的缩写,ORC 文件格式提供一种高效的方法来存储Hive数据。 当Hive读取,写入和处理数据时,使用 ORC 文件格式可以提高性能。 state string, zip int ) STORED AS orc tblproperties ("orc.compress"="NONE"); 除此之外,还可以为表指定压缩算法: CREATE tblproperties ("orc.compress"="Zlib"); 通常不需要设置压缩算法,因为Hive会设置默认的压缩算法 hive.exec.orc.default.compress= 我们通常的做法是将 HDFS 中的数据作为文本,在其上创建 Hive 外部表,然后将数据以 ORC 格式存储在Hive中: CREATE TABLE Addresses_ORC STORED AS ORC

3K32
  • 广告
    关闭

    开发者专享福利,1988元优惠券限量发放

    带你体验博客、网盘相册搭建部署、视频渲染、模型训练及语音、文字识别等热门场景。云服务器低至65元/年,GPU15元起

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Hadoop Streaming 读ORC文件

    使用正常的org.apache.orc.mapred.OrcInputFormat读orc文件时每行返回的值是: null {"name":"123","age":"456"} null { 即返回: 123 456 456 789 【重写InputFormat,单文件读取】 package is.orc; import org.apache.hadoop.conf.Configuration ; import org.apache.orc.mapred.OrcInputFormat; import org.apache.orc.mapred.OrcMapredRecordReader; import org.apache.orc.mapred.OrcStruct; import org.apache.orc.Reader; import org.apache.orc.Reader.Options; 对应到orc格式时没找到官方提供的包,只能自己写一个。

    1.3K30

    ORC与Parquet表的压缩

    ORC表压缩 ORC表的压缩,需要通过表属性orc.compress来指定。orc.compress的值可以为NONE、ZLIB、SNAPPY,默认为ZLIB。 首先创建一个非压缩的ORC表: create table compress_orc_none ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' STORED AS orc tblproperties ("orc.compress"="NONE") as select * from compress_2; ? 然后再创建一个使用SNAPPY压缩的ORC表: create table compress_orc_snappy ROW FORMAT DELIMITED FIELDS TERMINATED BY '\ t' STORED AS orc tblproperties ("orc.compress"="SNAPPY") as select * from compress_2; ?

    1.6K20

    Hive使用ORC格式存储离线表

    Apache Hive1.2.1 先看下列式存储的两个代表框架: Apache Parquet比较适合存储嵌套类型的数据,如json,avro,probuf,thrift等 Apache ORC 下面看下具体以orc为例子的场景实战: 需求: 将Hbase的表的数据,加载到Hive中一份,用来离线分析使用。 在hbase中,所以,先建立hive关联hbase的表,然后在建里一个orc的表,用来放数据,sql如下: Sql代码 drop table if exists etldb; --stored as textfile; tblproperties ("orc.compress"="SNAPPY"); --从临时表,加载数据到orc中 insert into table etldb select * from etldb_hbase; (4)加载完成后,就可以离线分析这个表了,用上orc+snappy的组合,查询时比直接 hive关联hbase

    1.3K100

    Presto对ORC格式的优化

    参考文章:https://prestosql.io/blog/2019/04/23/even-faster-orc.html 最近Presto的官网发表了一篇文章,叙述了新版本的Presto对ORC格式读取的性能优化过程 在 TPC-DS benchmark 测试中,对于 ORC 格式新的读取方式 Presto 总的查询耗费时间减少了约5%,CPU使用量减少了约9%。 What improved? 对于ORC各个数据类型的优化 Why exactly is this faster? /src/main/java/io/prestosql/orc/stream/BooleanInputStream.java#L218)。 对使用zlib压缩算法的ORC格式进行测试,结果如下。

    1.4K40

    ORC文件存储格式的深入探究

    然后在找到这个关于ORC的文章。 如果你英文很好,参考这里: https://cwiki.apache.org/confluence/display/Hive/LanguageManual+ORC 一、ORC文件格式 ORC的全称是(Optimized ORC在RCFile的基础上进行了一定的改进,所以与RCFile相比,具有以下一些优势: - 1、ORC中的特定的序列化与反序列化操作可以使ORC file writer根据数据类型进行写出。 - 4、除了上面三个理论上就具有的优势之外,ORC的具体实现上还有一些其他的优势,比如ORC的stripe默认大小更大,为ORC writer提供了一个memory manager来管理内存使用情况。 Data Statistics ORC reader用这个索引来跳过读取不必要的数据,在ORC writer生成ORC文件时会创建这个索引文件。

    3K30

    Hive - ORC 文件存储格式详细解析

    一、ORC File文件结构 ORC的全称是(Optimized Row Columnar),ORC文件格式是一种Hadoop生态圈中的列式存储格式,它的产生早在2013年初,最初产生自Apache 2015年ORC项目被Apache项目基金会提升为Apache顶级项目。ORC具有以下一些优势: ORC是列式存储,有多种文件压缩方式,并且有着很高的压缩比。 文件是可切分(Split)的。 ORC的文件结构如下图,其中涉及到如下的概念: ORC文件:保存在文件系统上的普通二进制文件,一个ORC文件中可以包含多个stripe,每一个stripe包含多条记录,这些记录按照列进行独立存储,对应到 ORC文件格式只支持读取指定字段,还不支持只读取特殊字段类型中的指定部分。 使用ORC文件格式时,用户可以使用HDFS的每一个block存储ORC文件的一个stripe。 三、Java操作ORC 到https://orc.apache.org官网下载orc源码包,然后编译获取orc-core-1.3.0.jar、orc-mapreduce-1.3.0.jar、orc-tools

    4.7K32

    答应我,别在CDH5中使用ORC好吗

    CREATE TABLE orc_test( s1 date, s2 string, s3 string ) STORED AS ORC LOCATION '/fayson/orc_test'; ALTER TABLE orc_test ADD COLUMNS (testing string); INSERT overwrite table orc_test SELECT * FROM orc_test ; INSERT into table orc_test SELECT * FROM orc_test; (可左右滑动) ? string); INSERT overwrite table orc_test SELECT * FROM orc_test; INSERT into table orc_test SELECT 4.ORC文件格式的事务支持尚不完善,具体参考《Hive事务管理避坑指南》,所以在CDH中的Hive中使用ORC格式是不建议的,另外Cloudera Impala也不支持ORC格式,如果你在Hive中创建

    2.2K30

    orc文件格式对常用系统的支持

    1、Hive支持 创建表时指定orc格式即可: create table tmp.orc_test(id bigint, name string, age int) stored as orc TBLPROPERTIES 2、SPARK支持 Spark读: df = spark.read.orc("/tmp/test/orc_data") # 读出来的数据是一个dataframe Spark写: df.write.format ("orc").save("/tmp/test/orc_data2") 3、Hadoop Streaming支持 3.1、读orc文件,输出text hadoop jar /usr/local/hadoop /orc_streaming_test \ -output /tmp/test/orc_streaming_test2 \ -inputformat org.apache.orc.mapred.OrcInputFormat \ -outputformat org.apache.orc.mapred.OrcOutputFormat \ -mapper is.orc.MyMapper -reducer is.orc.MyReducer

    1.2K30

    两种列式存储格式:Parquet和ORC

    ORC文件格式 ORC文件格式是一种Hadoop生态圈中的列式存储格式,它的产生早在2013年初,最初产生自Apache Hive,用于降低Hadoop数据存储空间和加速Hive查询速度。 ORC目前没有支持,仍然使用Parquet作为主要的列式存储格式。 文件结构 和Parquet类似,ORC文件也是以二进制方式存储的,所以是不可以直接读取,ORC文件也是自解析的,它包含许多的元数据,这些元数据都是同构ProtoBuffer进行序列化的。 ORC的文件结构入图6,其中涉及到如下的概念: ORC文件:保存在文件系统上的普通二进制文件,一个ORC文件中可以包含多个stripe,每一个stripe包含多条记录,这些记录按照列进行独立存储,对应到 由于ORC中使用了更加精确的索引信息,使得在读取数据时可以指定从任意一行开始读取,更细粒度的统计信息使得读取ORC文件跳过整个row group,ORC默认会对任何一块数据和索引信息使用ZLIB压缩,因此

    28720

    (译)优化ORC和Parquet文件,提升大SQL读取性能

    IBM Db2 Big SQL使用的两种常见文件存储格式是ORC和Parquet,这些文件格式以列格式存储数据,以优化读取和过滤列的子集。 ORC和Parquet格式将有关列和行组的信息编码到文件本身中,因此,在对文件中的数据进行解压缩、反序列化和读取之前,需要处理元数据。 ORC和Parquet提供了它们自己的不同工具来进行文件合并或压缩: ORC使用HIVE DDL Parquet使用工具执行合并命令 ORC文件合并 使用Hive DDL(Hive Data Definition 性能改进 内部测试表明,压缩ORC和Parquet小文件有助于显著提高Big SQL的读取性能。 格式的非压缩表运行查询比在压缩表上运行查询多2倍的时间 在parquet格式的非压缩表运行查询比在压缩表上运行查询多1.6倍的时间 这是针对ORC文件格式的压缩测试的输出,其中SLS_SALES_FACT_ORC

    1.4K30

    Flink教程-flink 1.11 流式数据ORC格式写入file

    写入orc工厂类 首先我们要引入相应的pom <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-orc_2.11 如果用户在写入orc文件之后,想添加一些自己的元数据信息,可以覆盖org.apache.flink.orc.vector.Vectorizer#addUserMetadata方法来添加相应的信息。 写入的配置来自https://orc.apache.org/docs/hive-config.html,具体可以是以下的值. key 缺省值 注释 orc.compress ZLIB high level compression = {NONE, ZLIB, SNAPPY} orc.compress.size 262,144 compression chunk size orc.stripe.size orc.bloom.filter.columns ”” comma separated list of column names orc.bloom.filter.fpp 0.05 bloom filter

    1.4K31

    Hive异常Failed with exception java.io.IOException:java.io.IOException: Malformed ORC file ....

    原来是我在创建表格的时候,选择的格式是ORC。 而在导入数据的时候,文本文件却非ORC格式的,固报了这个异常! 在这篇博客中,也提到了原因… ORC格式是列式存储的表,不能直接从本地文件导入数据,只有当数据源表也是ORC格式存储时,才可以直接加载,否则会出现上述报错。 解决方案: 将ORC格式的表删除换成textfile存储格式的即可。 先创建一个以textfile格式的临时表先将源文件数据加载到该表,然后再从textfile表中insert数据到ORC目标表中。

    1.1K30

    组件分享之后端组件——一个基于Golang的ORC组件包

    组件分享之后端组件——一个基于Golang的ORC组件包 背景 近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件 组件基本信息 组件:gosseract 开源协议:MIT License 内容 本节我们分享一个基于Golang的ORC组件包gosseract,当下对于图片识别的需求越来越多,难免我们需要在Go程序下进行图片的处理 ,本节我们就进行分享一个ORC的工具包gosseract,它是通过使用Tesseract c++库进行实现的,如果你想按照服务的方式使用,直接部署https://github.com/otiai10/ocrserver

    16720

    六.图像缩放、图像旋转、图像翻转与图像平移

    该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、 前一篇文章介绍Python调用OpenCV实现图像融合、图像加减法、图像逻辑运算和类型转换。这篇文章将详细讲解图像缩放、图像旋转、图像翻转、图像平移。 希望文章对您有所帮助,如果有不足之处,还请海涵~ 一.图像缩放 二.图像旋转 三.图像翻转 四.图像平移 该系列在github所有源代码: https://github.com/eastmountyxz 同样,可以获取原始图像像素再乘以缩放系数进行图像变换,代码如下所示。 ,具体内容包括: 一.图像缩放 二.图像旋转 三.图像翻转 四.图像平移 源代码下载地址,记得帮忙点star和关注喔!

    58610

    图像篇】OpenCV图像处理(七)---图像平移VS图像旋转

    前言 在上期的文章(【图像篇】OpenCV图像处理(六)---图像混合VS按位运算)中,我们学习了图像混合的实际操作,其实就是图像按照不同权重的叠加,今天我们继续来学习别的图像处理知识点-图像平移VS 图像旋转。 图像平移 一、图像平移简介 简单的说图像平移就是对图像像素进行操作,从而实现图像左右上下平移的功能,其实图像平移也是属于仿射变换的一种,我们接着往下看。 ,第二个是图像平移的信息(左移,上移等等),第三个就是图像原始的宽度和高度。 1.1 效果展示 图像旋转 二、图像旋转 图像旋转顾名思义就是将图像按照一个对称点进行某个度数的旋转,可以使顺时针,也可以是逆时针,下面来看看实战吧。

    11920

    图像处理-图像增强

    图像增强前期知识 图像增强是图像模式识别中非常重要的图像预处理过程。 图像增强的目的是通过对图像中的信息进行处理,使得有利于模式识别的信息得到增强,不利于模式识别的信息被抑制,扩大图像中不同物体特征之间的差别,为图像的信息提取及其识别奠定良好的基础。 一幅输入图像经过灰度变换后将产生一幅新的输出图像,由输入像素点的灰度值决定相应的输出像素点的灰度值。灰度变换不会改变图像内的空间关系。图像的几何变换是图像处理中的另一种基本变换。 它通常包括图像的平移、图像的镜像变换、图像的缩放和图像的旋转。通过图像的几何变换可以实现图像的最基本的坐标变换及缩放功能。 相应地,对图像的低频部分进行增强可以对图像进行平滑处理,一般用于图像的噪声消除。 3、频域增强 图像的空域增强一般只是对数字图像进行局部增强,而图像的频域增强可以对图像进行全局增强。

    15510

    大数据文件格式对比 Parquet Avro ORC 特点 格式 优劣势

    有三个文件格式用于Hadoop集群: Optimized Row Columnar (ORC) Avro Parquet ? Apache ORC ORC(OptimizedRC File)存储源自于RC(RecordColumnar File)这种存储格式,RC是一种列式存储引擎,对schema演化(修改schema需要重新生成数据 )支持较差,而ORC是对RC改进,但它仍对schema演化支持较差,主要是在压缩编码,查询性能方面做了优化。 RC/ORC最初是在Hive中得到使用,最后发展势头不错,独立成一个单独的项目。Hive 1.x版本对事务和update操作的支持,便是基于ORC实现的(其他存储格式暂不支持)。 压缩率:基于列的存储区Parquet和ORC提供的压缩率高于基于行的Avro格式。

    1.2K21

    扫码关注腾讯云开发者

    领取腾讯云代金券