【问题标题】:Drupal Node Table and SQL Performance QuestionDrupal 节点表和 SQL 性能问题
【发布时间】:2011-02-26 17:54:45
【问题描述】:

这个问题部分是 Drupal 问题,部分是 SQL 问题。由于所有节点相关模块的易用性和灵活性,我决定在我的站点上实现相当多的功能作为节点。 Drupal 将节点的基本信息存储在节点表中。我的节点表可能会很大,可能有数百万行。我通过阅读文档了解到大表会减慢查询速度,尤其是在联接中。我真正不明白的是如何量化它。我知道具体的查询、硬件和许多其他因素都涉及到,但我想知道所有其他变量都相等,查询时间是否存在某种表大小等式?一个有 100,000 行的表执行查询所需的时间是 10,000 行的表的 10 倍吗?

【问题讨论】:

    标签: sql database drupal


    【解决方案1】:

    查询的执行时间很大程度上取决于查询和数据库的结构——尤其是索引。一个 10 倍大小的表完全有可能花费 10 倍的时间来搜索,而一个 10 倍大小的表也完全有可能花费完全相同的时间来搜索。

    MySQL 的explain query feature 非常适合找出可以优化查询以加快运行速度。

    【讨论】:

    • 确实没有通用的答案。您需要自行验证所有查询,尤其是动态/复杂查询,例如由(复杂)视图或 node_access 生成的查询。
    • 好吧,我想我会用少量节点做一些基准测试,然后创建一个大节点并查看相同查询需要多长时间(对于不同查询的数量)。我真的很想看看是否有任何通用规则,就 drupal 节点数和查询时间而言。
    猜你喜欢
    • 2019-04-12
    • 1970-01-01
    • 2010-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-20
    • 1970-01-01
    相关资源
    最近更新 更多