首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >一个月增加100万条的MySQL数据库,如何对数据库进行分区以保持查询时间。

一个月增加100万条的MySQL数据库,如何对数据库进行分区以保持查询时间。
EN

Stack Overflow用户
提问于 2012-08-12 21:11:59
回答 1查看 454关注 0票数 0
  • 我是一名大学本科毕业生,致力于基于PHP和MySQL的库存管理系统,在全国范围内运作。其数据库规模预计每月将增加约100万项,目前的规模约为200万项。
  • 我需要防止查询时间的指数增长,目前大多数模块的查询时间从7-11秒不等。
  • 问题是,与以往的数据相比,上个月输入的数据的访问概率要高得多。因此,我认为基于数据输入时间的数据划分应该能够控制查询时间。所以我怎么能做到这一点。
  • 具体来说,我希望有一种方法来缓存上个月的数据,以便每个查询都在具有最近数据的表中搜索产品,并且应该搜索其余的数据,以防在最后一个月的数据中找不到它。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-12 21:58:03

如果您想使用MySQL的分区函数,请查看这篇文章

尽管如此,在使用分区时有一些限制:

  • 不能有不在分区键中的索引。
  • 您失去了一些数据库可移植性,因为分区与其他数据库的工作方式非常不同。

您还可以手动处理分区,方法是定期将旧记录移动到存档表。当然,您还必须实现不同的代码来读取那些存档的记录。

还请注意,您的查询时间似乎相当长。我使用过比200万张记录大得多的表格,而且访问时间要好得多。

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

https://stackoverflow.com/questions/11925924

复制
相关文章

相似问题

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