我有一个数据库,其中大多数表都有表的删除标志.因此系统软删除项目(因此除非由管理员提供,否则不再可访问它们)
令我担心的是,几年后,当表格大得多时,系统的整体速度将会降低.
我该怎么做才能抵消这样的效果.
>我是否将删除字段编入索引?
>我是否将删除的数据移动到相同的删除表中并在取消删除时将其移回?
>随着时间的推移,我是否会通过几个MySQL服务器分发数据? (基于增长)
我会感谢所有的建议或故事.
更新:
因此分区似乎是关键.但是不会分区只创建两个“表”,一个包含已删除的项目,另一个没有已删除的项目.
因此,随着时间的推移,删除的分区将变大,偶尔从中获取的分区将变慢(并且随着时间的推移变慢)
速度差会是我应该担心的吗?因为我通过某个键值获取大多数(如果不是全部)数据(有些是搜索但是对于此设置它们可能很慢)
解决方法:
我在DELETE标志上对表进行分区.
删除的行将物理保存在其他位置,但从SQL的角度来看,表格保持不变.
标签:mysql,scaling,soft-delete 来源: https://codeday.me/bug/20190724/1520031.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。