业务上有一张表数据,每个月都有8000万数据的增长,现在插入和查询效率都在降低,想采用表分区,按月进行分区。
了解到PostgreSQL对于分区有两种方式实现:
1、继承式分区,利用主表、子表继承,主表添加触发器或者规则的方式实现,将添加到主表的数据转发到字表中。
2、声明式分区,定义好需要按照那个字段进行表分区,然后创建分区表就可以了。
现在有一些疑问:
1、继承式分区和声明式分区两种效率哪种更高呢?
2、大概多少据分成一个分区呢?
3、分区大概分成多少对性能影响没那么大?
业务上有一张表数据,每个月都有8000万数据的增长,现在插入和查询效率都在降低,想采用表分区,按月进行分区。
了解到PostgreSQL对于分区有两种方式实现:
1、继承式分区,利用主表、子表继承,主表添加触发器或者规则的方式实现,将添加到主表的数据转发到字表中。
2、声明式分区,定义好需要按照那个字段进行表分区,然后创建分区表就可以了。
现在有一些疑问:
1、继承式分区和声明式分区两种效率哪种更高呢?
2、大概多少据分成一个分区呢?
3、分区大概分成多少对性能影响没那么大?
我觉得你应该考虑分区键设计。
数据量大压力来源于磁盘IO吧,单实例分区的话如果不指定分区独立磁盘实际上只提升了并行计算能力,IO还是一样的。
月增量八千万如果是非变动时序数据则可以考专业的存储计算