簡體   English   中英

無法從Spark讀取hadoop / hive外部s3表

[英]Unable to read hadoop/hive external s3 table from spark

突然我無法從spark讀取hive外部s3表,我注意到在幾個分區下創建了子文件夾。

我希望可以配置任何參數或設置,以便Hadoop不會創建這些子文件夾。

當我從s3中手動刪除子文件夾時,我可以讀取表。 但需要找到一種方法,以使這些子文件夾將來不會被隨機創建。

CREATE EXTERNAL TABLE `mydb.mytable`(
    `id` string COMMENT 'from deserializer', 
    `attribute_value` string COMMENT 'from deserializer', 
    `attribute_date` string COMMENT 'from deserializer', 
    `source_id` string COMMENT 'from deserializer')
     PARTITIONED BY (`partition_source_id` int)
     ROW FORMAT SERDE 'com.bizo.hive.serde.csv.CSVSerde' 
     STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' 
     OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
     LOCATION 's3://path/my_data'
     TBLPROPERTIES ('transient_lastDdlTime'='1567170767')

當我運行select * query時,我得到:

錯誤:java.io.IOException:不是文件:s3:// my_path / partition_source_id = 11/1 1條語句失敗。

我認為該DDL不會創建子文件夾。 如果有一些工作可以將數據加載到“ s3:// path / my_data”中並在mydb.mytable上執行DDL add分區,我想您應該看一下該工作。

暫無
暫無

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

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