Mysql 在给定的数据库结构和表大小下,如何预测完成SQL请求所需的资源?

Mysql 在给定的数据库结构和表大小下,如何预测完成SQL请求所需的资源?,mysql,sql,query-optimization,bigdata,Mysql,Sql,Query Optimization,Bigdata,我理解,任何计算所需资源的计量都是非常相对的,取决于: 硬件配置 软件设置 毕竟是方法论 但无论如何,如果我想开发一个使用数据库的web应用程序,我肯定需要智能地创建DB结构 当然,有一种理论可以告诉我们DB引擎在特定情况下是如何工作的。但我预计情况列表将过于复杂:存储引擎的类型、硬件配置等等 我真的希望能够设置一个空数据库,并找出如果受影响的表具有给定数量的行,将使用多少CPU“滴答声”、IOs和内存 有什么办法吗 我真的很想能够建立一个空的数据库,并找出有多少 如果受影响的表不可用,则将

我理解,任何计算所需资源的计量都是非常相对的,取决于:

  • 硬件配置

  • 软件设置

  • 毕竟是方法论

但无论如何,如果我想开发一个使用数据库的web应用程序,我肯定需要智能地创建DB结构

当然,有一种理论可以告诉我们DB引擎在特定情况下是如何工作的。但我预计情况列表将过于复杂:存储引擎的类型、硬件配置等等

我真的希望能够设置一个空数据库,并找出如果受影响的表具有给定数量的行,将使用多少CPU“滴答声”、IOs和内存

有什么办法吗

我真的很想能够建立一个空的数据库,并找出有多少 如果受影响的表不可用,则将使用CPU“滴答声”、IOs和内存 具有给定数量的行

那不行

查询优化器考虑了许多不同的因素,其中一个因素通常是查询估计返回的行数。只有当表中的行数与生产中的行数大致相同时,这些估计才是好的。否则,优化器可能会选择与生产数据库完全不同的执行计划


因此,用您期望的行数填充测试数据库。构建您认为将成为生产中具有代表性的示例的查询。运行它们,测量它们的功能。

你说的
…测量它们的功能是什么意思?你能再解释一下吗?你要测量“CPU‘滴答声’、IOs和内存”。不管你打算怎么做,那就这么做。您还可以记录和保存执行计划。这是关于
解释
?谢谢你给了我正确的方向。此外,我在互联网上发现了一些优化教程。希望在此之后我能问一些不太常见的问题。
EXPLAIN
返回执行计划。