首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PostgreSQL 11中具有自动分区创建的表分区?

PostgreSQL 11中具有自动分区创建的表分区?
EN

Stack Overflow用户
提问于 2019-07-05 06:26:42
回答 1查看 4.1K关注 0票数 3

我需要维护审计表,而且由于更改的数量将会很大,我需要一个有效的方法来处理这个问题。我想过的解决方案是,只在审计表中记录已更改的列,并将其按季度或半年一次地划分到createdon列上。

我想知道甲骨文是否有类似于“间隔分区”的东西?如果没有,我怎样才能做到呢?

,我希望每6个月在插入行时自动创建一个新分区。

我使用postgres 11作为我的数据库。

EN

回答 1

Stack Overflow用户

发布于 2019-10-17 12:07:42

我不认为在这一点上有什么神奇的配置可以让您的生活更轻松:https://www.postgresql.org/docs/11/ddl-partitioning.html

如果您想要自动创建表,我认为您有两个主要的可能性:

  • 验证“母”表中的每个数据,看看它是否适合已经存在的分区(触发器,如果大量插入可能是一个问题)
  • 偶尔检查一下,您是否已经有了将来需要的分区。对于这一次,pg_partman将是你最好的盟友。

举个例子,几年前,我做了一个分区机制,当时只有声明性的分区机制,而没有添加pg_partman的任何可能性。有了每月1500万行的触发机制,它的工作方式仍然很有魅力。

如果您不想损害您的性能(特别是如果您不知道您的系统将增长到多大),我建议您使用与a_horse_with_no_name注释相同的响应:使用pg_partman。

如果您不能使用它,就像我的情况一样,采用这两种哲学中的一种(通过crontask触发或提前创建表(例如))。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56897594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档