簡體   English   中英

如何在Hive CDH中創建ORC文件?

[英]How to create an ORC file in Hive CDH?

我可以輕松地在Apache Hadoop或Hortonworks的HDP中創建ORC文件格式:

CREATE TABLE ... STORED AS ORC

但是,這在Cloudera的CDH 4.5中不起作用。 (驚訝!)我得到:

失敗:SemanticException STORED AS子句中的無法識別的文件格式:ORC

因此,作為替代方案,我嘗試下載並安裝包含ORC類的Hive jar:

hive> add jar /opt/cloudera/parcels/CDH-4.5.0-1.cdh4.5.0.p0.30/lib/hive/lib/hive-exec-0.11.0.jar;

然后創建我的ORC表:

hive>    CREATE TABLE test (name STRING)

> row format serde
> 'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
>  stored as inputformat
>   'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'   
>   outputformat
>   'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat';
OK

但是從一些CSV數據插入到此表后,出現錯誤:

hive> INSERT OVERWRITE TABLE test 
> SELECT name FROM textdata;

    Diagnostic Messages for this Task:
java.lang.RuntimeException: Error in configuring object
    at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
    at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
    at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
    at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:413)

如何在CDH的Hive中創建ORC表?

CDH 4.5包含Hive 0.10,請參閱CDH版本4.5.0包裝和Tarball 在Hive 0.11中添加了ORC,請參見發行說明HIVE-3874:為Hive創建新的“優化行列”文件格式

CDH 5現在處於Beta版,但它確實包含Hive 0.11,請參閱CDH版本5.0.0 Beta 1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM