我们有两个星系团,一个是地图R,另一个是我们自己的。我们希望使用Map数据在我们自己的硬件中创建新的设置。
上面通过的步骤没有出错,但是当我查询分区时,作业会失败,下面是错误。
java.lang.IllegalArgumentException: Buffer size too small. size = 262144 needed = 4958903
at org.apache.hadoop.hive.ql.io.orc.InStream$CompressedStream.readHeader(InStream.java:193)
at org.apache.hadoop.hive.ql.io.orc.InStream$CompressedStream.read(InStream.java:238)有人能告诉我,我们能否直接从ORC文件中创建单元orc分区表?
我的存储器是Azure数据湖。
发布于 2017-03-31 09:52:37
根据您的描述,根据我的理解,我认为您希望将所有orc文件从一个集群复制到另一个集群,并将这些orc文件作为一个单元表加载。
为此,请尝试按照下面的命令创建用于加载orcfile数据的外部表。
CREATE EXTERNAL TABLE IF NOT EXSISTS <table name> (<column_name column_type>, ...)
ROW FORMAT SERDE 'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
STORED AS ORC
LOCATION '<orcfile path>'如果不知道orc文件的列列表,可以参考Hive手动ORC File Dump Utility通过hive --orcfiledump -j -p <location-of-orc-file-or-directory>以JSON格式打印ORC文件元数据。
https://stackoverflow.com/questions/43129022
复制相似问题