我正在将s3 bucket连接到apache配置单元,以便查询 Parquet
直接通过prestodb在s3中创建文件。
为此,我配置了 hive-site.xml
文件,并在文件中添加了我的aws访问密钥和密钥,如本文所述。现在,我的s3 bucket url路径在哪里 Parquet
文件看起来像:
https://s3.console.aws.amazon.com/s3/buckets/sb.mycompany.com/someFolder/anotherFolder/?region=us-east-2&tab=overview
在创建外部表时,我将s3的位置指定为:
LOCATION "s3://sb.mycompany.com/someFolder/anotherFolder"
apache配置单元无法在提到的位置找到parquet文件,因为它没有向查询返回任何数据。此文件夹包含多个Parquet文件。我的问题是:
配置单元是否可以一次从所有Parquet文件收集数据,因为它们都具有与我为外部表定义的模式相同的模式?
我指定的s3位置的格式是否正确,或者我是否应该包括s3 bucket的区域(如果是,怎么做)?
1条答案
按热度按时间balp4ylt1#
如果数据已分区,则需要修复表,在某些情况下,即使没有任何分区,也必须修复表,请在配置单元中使用以下命令:
设置hive.msck.path.validation=ignore;
msck修复表schema.table;