我有一个s3桶,我正在尝试抓取和编目 . 格式是这样的,其中SQL文件是与不同数据文件的模式匹配的DDL查询( CREATE TABLE
语句),即 data1
, data2
等 . )
s3://my-bucket/somedata/20180101/data1/stuff.txt.gz
s3://my-bucket/somedata/20180101/data2/stuff.txt.gz
s3://my-bucket/somedata/20180101/data1.sql
s3://my-bucket/somedata/20180101/data2.sql
s3://my-bucket/somedata/20180102/data1/stuff.txt.gz
s3://my-bucket/somedata/20180102/data2/stuff.txt.gz
...
我只想编目 data1
,所以我试图使用exclude patterns in the Glue Crawler - 见下文 - 即 *.sql
和 data2/*
.
不幸的是,爬虫仍然在 s3://my-bucket/somedata/
的根路径中对所有内容进行分类 . 我可以忍受 data2
编目; sql
文件让我最为关心/烦恼 .
任何人都有排除模式的经验或能够指出这里有什么问题吗?
1 回答
排除模式中的
*
不跨目录,但**
跨越目录 .要排除所有
.sql
文件,您可以使用:**.sql
data2/*
排除的完整路径是s3://my-bucket/somedata/data2/*
,但它缺少您的日期分区文件夹 . 这可以通过在前面添加*
来解决 .要排除
data2/
目录,请使用:*/data2/*