代码之家  ›  专栏  ›  技术社区  ›  Industrial

php:创建自动数据库切分逻辑?

  •  1
  • Industrial  · 技术社区  · 16 年前

    我们有一个基于PHP/mySQL的web应用程序,使它变得简单。数据库中的一个表很容易变大,很容易产生几百万条记录,因此表分片可能是一种选择。

    缓存文件包含数据库中可用表的列表。每个表最多包含一百万行,当达到该值时,将在构造新表后重新创建缓存列表。

    这是处理大量数据并保持相当低的索引大小的好方法吗?

    谢谢

    4 回复  |  直到 16 年前
        1
  •  3
  •   Frankie    10 年前

    如果你正在为可能的巨大增长(比如游戏病毒化)提前做计划,你可以按照之前的步骤去做NoSQL。

    Couchbase /powers Zinga(个人最爱)
    Apache Cassandra /权力推特
    mongoDB /权力克雷格利斯特

    php/MySQL“让它变得简单” 所以不要 在一个非常大的问题上重新发明轮子 .

    别把数据弄乱了。寻求一个行之有效的解决方案。包括MySQL。

        3
  •  1
  •   Mitch C    16 年前

    老实说,我认为那不是个好主意。您应该考虑归档旧数据或使用像MOngo这样的NoSQL解决方案。

        4
  •  1
  •   GrandmasterB    16 年前

    索引的性能不会随着表的大小而线性下降。在这成为一个问题之前,表必须非常庞大。如果您看到性能问题,我会开始执行mysql“explains”,并确保您的所有查询都能执行最少的行扫描。你可能会惊讶于真正的瓶颈最终是什么。

    所以,基本上,如果你需要这些数据,我不会乱来。另一方面,如果它类似于会话数据,只需删除太旧的行即可。

    推荐文章