【问题标题】:MySQL Optimization 20 gig tableMySQL 优化 20 gig 表
【发布时间】:2011-02-18 00:53:20
【问题描述】:

我有一个 20 gig 表,每天有大量的插入和更新。该表也经常被搜索。我想知道 MySQL 索引是否会变得支离破碎,可能需要重建或类似的东西。

我发现很难弄清楚是 CHECK TABLE、REPAIR TABLE 还是类似的东西?

感谢任何指导,我是 db newb。

【问题讨论】:

  • 你用的是什么版本的mySql?表使用什么存储引擎?

标签: mysql optimization fragmentation


【解决方案1】:

根据您使用的 MySQL 版本,您可以考虑创建表分区。您可以通过多种方式使用它,通过 id 哈希分区或日期分区。

还有一些方法可以在逻辑上将“工作”数据与档案数据分开。考虑一个表示提要的大表。可能不到 14 天或 28 天的数据占您使用数据的 95%,其余的通常可以放在存档表中。

如果能够划分成代表数据块的多个服务器是可能的,那么有一些关于如何使用 MySQL 创建联合数据存储系统的精彩演示。 Brad Fitpatrick's overview of LiveJournal 是一个很好的起点。

根据您存储的数据类型,您甚至可能根本不需要 MySQL。如果您的大部分查找都是主键获取,您可能需要调查 Redis 或 Cassandra 等键/值存储系统,看看它们是否满足您的需求。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 2013-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-25
    • 2021-10-27
    相关资源
    最近更新 更多