我有一个包含大约 500 万行的巨大数据库表。现在在某些情况下检索记录会使服务器变慢。随着时间的推移,我现在如何管理桌子。
我正在考虑每年进行一些归档技术,例如每年将完整的表格分解为许多小表格,但这使我在编码方面付出了很多改变。我必须更改从数据库查询的完整结构。因此,很可能在项目中的大多数地方都发生了变化。
我还能做些什么来减少从数据库表中获取记录的时间?我可以采用其他任何技术来避免代码中的许多更改吗?
提前致谢
我有一个包含大约 500 万行的巨大数据库表。现在在某些情况下检索记录会使服务器变慢。随着时间的推移,我现在如何管理桌子。
我正在考虑每年进行一些归档技术,例如每年将完整的表格分解为许多小表格,但这使我在编码方面付出了很多改变。我必须更改从数据库查询的完整结构。因此,很可能在项目中的大多数地方都发生了变化。
我还能做些什么来减少从数据库表中获取记录的时间?我可以采用其他任何技术来避免代码中的许多更改吗?
提前致谢
在这种情况下,表分区可能会有所帮助。以下提供信息:
http://dev.mysql.com/doc/refman/5.1/en/partitioning-overview.html
https://dba.stackexchange.com/questions/19313/partitioning-a-table-will-boost-the-performance