如何解决如何影响AWS Glue Crawler创建所需的表结构?
我有一个像这样的S3文件夹结构:
s3://bucket_name/FirstDate
s3://bucket_name/SecondDate
在这两个文件夹中,我都有100多个CSV。 这些CSV的命名不同,但是通常共享相似的架构。
当我创建一个粘合爬虫并将包含路径设置为s3://bucket_name
时,它会产生一个表,其中包含所有CSV的所有列,并且在日期上有两个分区。
我希望每个CSV都是它自己的表。
因此,我编写了一个python脚本来枚举存储桶的内容,并针对每个CSV文件,将该文件放入同名文件夹中,即s3://bucket_name/FirstDate/Monday.csv => s3://bucket_name/FirstDate/Monday/Monday.csv.
然后,我将每个文件夹设置为包含路径(s3://bucket_name/FirstDate/Monday
)。
太好了,粘合搜寻器现在可以根据需要为每个CSV文件创建一个表。
但是我已经失去了分区的日期,因此搜寻器在扫描Monday
中的Monday
文件夹和第二个名为{{1}的表时会创建一个名为FirstDate
的表。 }扫描Monday-1234randomstring
中的Monday
文件夹时。
我想知道在包含路径(即SecondDate
中使用globing,但这似乎行不通。
谁能帮助我了解如何构造我的数据?回顾一下:
我有
s3://bucket_name/**/Monday
所有CSV都讨论不同的概念,但共享的架构非常相似,以至于将s3://bucket_name/FirstDate/Monday.csv
s3://bucket_name/FirstDate/Tuesday.csv
s3://bucket_name/FirstDate/Wednesday.csv
s3://bucket_name/SecondDate/Monday.csv
s3://bucket_name/SecondDate/Tuesday.csv
s3://bucket_name/SecondDate/Wednesday.csv
设置为包含路径会导致一个表和两个分区,而我希望每个文件一个表和两个分区。
如何配置搜寻器,或重新组织我的数据,以便当粘合搜寻器搜寻数据时,它会在日期(我希望添加ThirdDate等)上生成一个分区,并为每个csv文件生成一个表?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。