所以我有一个客户端,我正在为它构建一个 Rails 应用程序......我正在使用 PostgreSQL。
他发表了关于更喜欢隐藏记录而不是删除记录的评论,鉴于这是我第一次听说这件事,我想我会请你们听听你们的想法。
我宁愿隐藏而不是删除,因为表中的删除最终会导致表索引破坏,导致查询花费的时间比预期的要长(比插入或更新差得多)。这在网站开始时不会成为问题(随着时间的推移它会呈指数级恶化),但作为“日常”Web 应用程序功能的一部分,只是不删除任何内容(尚未),这似乎是一个永远不会遇到的简单问题。作为数据优化和维护过程的一部分,我们总是可以稍后处理删除,并在某些(尚未确定)计划的基础上在该过程中重新索引表。
在我构建的所有 Rails 应用程序中,我从未遇到过记录被删除并影响索引的问题。
我错过了什么吗?这是一个曾经存在的问题,但现代 RDBMS 产品已经解决了吗?