我有一个 20 gig 表,每天有大量的插入和更新。该表也经常被搜索。我想知道 MySQL 索引是否会变得支离破碎,可能需要重建或类似的东西。
我发现很难弄清楚检查表、维修表或类似的东西中的哪一个?
任何指导表示赞赏,我是 db newb。
我有一个 20 gig 表,每天有大量的插入和更新。该表也经常被搜索。我想知道 MySQL 索引是否会变得支离破碎,可能需要重建或类似的东西。
我发现很难弄清楚检查表、维修表或类似的东西中的哪一个?
任何指导表示赞赏,我是 db newb。
根据您使用的 MySQL 版本,您可以考虑创建表分区。有几种方法可以使用它,通过 id 哈希分区或日期分区。
还有一些方法可以在逻辑上将“工作”数据与档案数据分开。考虑一个表示提要的大表。可能不到 14 天或 28 天的数据占您使用数据的 95%,其余的通常可以放在存档表中。
如果能够分割成多个代表数据块的服务器是可能的,那么有一些关于如何使用 MySQL 创建联合数据存储系统的精彩演示。Brad Fitpatrick 对 LiveJournal 的概述是一个很好的起点。
根据您存储的数据类型,您甚至可能根本不需要 MySQL。如果您的大多数查找都是主键获取,您可能需要调查 Redis 或 Cassandra 等键/值存储系统,看看它们是否满足您的需求。