数据库分区是否需要更改应用程序代码?

does database partitioning require changes in application code?

我有一个用 Spring-boot 编写的应用程序,我们已经完成了查询优化。我们正在考虑基于日期的数据库(Oracle 数据库)分区。我们是否需要在 spring 启动应用程序中做任何更改,否则 oracle 会自动处理。

不,它不需要 更改应用程序。

然而分区并不是神奇的 "make everything go faster" 开关。

为了使分区正常工作以提高性能,您的查询 必须 在其 where 子句中包含分区键 - 否则分区甚至可能会使速度变慢。

因此,如果您的查询已包含分区键,则无需进行任何更改。

如果查询不包含分区键,您需要将它们添加到所有应该使用分区修剪以提高性能的查询中。