如何使用 AWS Glue Crawler 读取 PostgreSQL 表分区?
Posted
技术标签:
【中文标题】如何使用 AWS Glue Crawler 读取 PostgreSQL 表分区?【英文标题】:How can I read PostgreSQL Table partitions with AWS Glue Crawler? 【发布时间】:2020-05-27 20:12:18 【问题描述】:在 Postgresql 11 中创建分区时,我的爬虫无法正确读取 RDS 分区表。
分区DDL的例子是
表:
CREATE TABLE book (
ID int8 NULL,
effectivetodate date NULL,
) PARTITION BY RANGE(effectivetodate);
分区:
CREATE TABLE book_historical PARTITION OF portfolio for VALUES FROM ('1000-12-31') TO ('2019-12-31');
CREATE TABLE book_current PARTITION OF portfolio DEFAULT;
观察结果是两张表:
book_historical book_current由爬虫创建,但主表
书不存在。
【问题讨论】:
欢迎来到 ***。请为您的问题使用正确的格式,以便其他人能够理解并回答它。我建议你阅读询问guidelines of *** @Abhishek 看起来更好吗? 是的!很快就会有人回答你的问题... 【参考方案1】:不使用范围,只需传递列名进行分区,爬虫将根据您的列动态分区
CREATE TABLE book (
ID int8 NULL,
effectivetodate date NULL,
) PARTITION BY effectivetodate;
【讨论】:
感谢您的回答,舒巴姆。我在 Postgresql 11.6 中工作,直接按字段分区不起作用。我们可以按列表、范围等进行分区。 我以为你在说 Glue 爬虫 是的,我说的是爬虫,但是我们需要在PostgreSQL中创建一个分区,然后爬虫才能爬取分区。所以在我的代码中,我使用日期范围对表进行分区。爬虫无法爬取主表,但能够将分区表作为独立表读取。 有一个数据分组识别分区的选项,你选择了吗?以上是关于如何使用 AWS Glue Crawler 读取 PostgreSQL 表分区?的主要内容,如果未能解决你的问题,请参考以下文章
AWS Glue Crawler 将 json 文件分类为 UNKNOWN
通过 AWS Glue Crawler 识别并存储在数据目录中的表的异常