根据特定的列过滤条件从s3 bucket中选择s3 parquet文件

30byixjq  于 2021-05-16  发布在  Spark
关注(0)|答案(1)|浏览(492)

我需要根据特定的列过滤条件从s3 bucket中选择s3 parquet文件列表。
文件结构:s3:bucket/folder/file.parquet{inside folder multiple parquet files}
文件包含id、名称、地址、zipcode、deptno、transactiontime等信息。
深度=1,2,3,4..etc(int)
transactiontime=“2019-10-24t21:14:39.503z”,“2020-01-10t00:00:00.000z”。。etc(字符串)
现在我想根据条件deptno,transactiontime(假设deptno=2,transactiontime=“2019-10-24t21:14:39.503z”)从bucket中收集parquet文件列表
我们如何才能做到这一点,并感谢任何建议。

68bkxrlz

68bkxrlz1#

雅典娜是你的选择。你需要的是 WHERE 雅典娜的从句。这个问题涉及面很广,所以我不能提供任何具体的解决办法。这篇文章应该能回答你的问题。
第一步是用s3建立雅典娜。aws对此过程进行了充分的记录。
如果您要求查询的python实现,那么boto3-athena客户机就是您想要的。准确地说,您需要以下方法:
启动查询执行:运行查询中包含的sql查询语句。
get\u query\u execution:如果您有权访问运行查询的工作组,则返回有关单个查询执行的信息。每次执行查询时,有关查询执行的信息都用唯一的id保存。
get_query_results:从amazons3中的athena query results位置流化queryexecutionid指定的单个查询执行的结果。

相关问题