问题标签 [query-performance]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
175 浏览

mysql - 查询花费了太多时间并影响了我们的性能

查询花费了太多时间。此查询来自网络应用程序。它影响了我们的表现。任何人请帮我重写它并与我分享您的宝贵建议。

使用解释计划查询:

表结构:

0 投票
2 回答
126 浏览

sql - SQL Access 查询速度

我的 Access 2003 数据库中有以下查询:

表 Projet 有约 2500 行,而 InfoProjet 只有 200 行。在 Access 中打开此表中的任何一个都需要不到 1 秒的时间。但是,执行上述查询需要 5 秒以上。

我想知道是否可以做些什么来提高此查询的性能。查询中是否有一些我应该避免性能方面的东西?或者我只是在访问限制下?我猜想Like在子查询中使用没有帮助,但肯定有其他东西会减慢查询速度。

0 投票
1 回答
158 浏览

database - 非规范化会变得低效吗?

我们有一个非规范化的表,因为对于我们用户的数据量来说,连接速度太慢的风险很大。所以我们创建了 10 列信息(INFO0、INFO1...INFO9)。大多数时候,只使用 2-3 第一列,其他为空。

但现在,我们需要再添加两种类型的信息,每列 10 列(总共 20 列)。棘手的部分是,我们的设计将使用户无法使用所有 30 个非规范化列。在任何时候,他们总是能够在每行上使用最多 10 个。此外,我们可能需要添加更多新的非规范化列,但我们永远无法在每行上使用超过 10 个。

我知道这不是一个好的设计,但我们真的别无选择。所以我的问题是:这种设计会变得低效吗?有很多具有空值的列会减慢我的查询速度吗?如果是的话,它会成为一件大事吗?

0 投票
4 回答
405 浏览

sql - SQL获取具有相同列A但不同B的记录

假设我们有下表meals

同一餐,不同星级如何获得记录?我需要只有不同星星的记录。

上表的结果应如下所示:

我尝试了以下查询:

但它消耗了太多时间和一些显着的内存量。

我的桌子的实际大小是:

所以我需要想出一些别的东西,我正在寻求你的帮助!

0 投票
2 回答
210 浏览

sql - 改善较差的间歇性 SQL 查询性能

我有一个中等复杂的嵌套 T-SQL 查询,它在大多数情况下具有良好的性能,除了在我的每个 2 周支付期开始时(要处理的记录更少!)查询陷入了数量级慢点。然后在双周期间的某个时间点,SQL Server (2008) 确定执行计划应该改变并且一切都恢复到正常速度。我有“好”和“坏”场景的执行计划,但我是这方面的 n00b,我不知道如何解释它们。下一步对我来说是什么?发布查询?执行计划?阅读一些文章/书籍?

0 投票
2 回答
124 浏览

php - 什么是我的查询获得快速结果的好索引?

我有一个从许多表中提取的查询,但速度很慢,我想改进它。

请注意,phone_Calls 表有大约 450 万条记录,帐户大约有 30 万条记录。

我现在有这样的索引

这是我解释查询时得到的

在此处输入图像描述

0 投票
0 回答
75 浏览

mysql - 在 MySQL 中展平多个 M-to-N 还是去文档化?

. . 我正在为一个项目重构一个旧的 MySQL 数据库。我们有一个产品表(大约 20k 行,它可能会增长到 40k 或更多)和不同类型的分类(目前有 4 种)。为简单起见,我将创建一个仅包含两种明显且常见的示例类型(“类别”和“标签”)的示例。这只是一个例子,我当然不是一个有创造力的人。

. . 我需要获取所有产品的列表,并将其类别和标签捆绑在一起。此示例的(相关且大大简化的)数据库结构如下:

  • 产品表:id、name
  • 分类表:id、name
  • 标签表:id,名称
  • Products_Tags 表:product_id、tag_id
  • Products_Categories 表:product_id, category_id

. . GROUP_CONCAT我可以使用子查询和(本文中有一个很好的例子)以相对良好的性能来展平关系,但我想知道对于像 MongoDB 这样的面向文档的数据库是否不是这种情况,我可以简单地将所有内容保存在一个单个文档,如下所示:

  • 产品表:{id,名称,类别:[],标签:[]}

. . 采用面向文档的路线,我还有一个额外的好处,就是能够为不同种类的产品使用不同种类的类别,但是我的代码需要检查数据的一致性,而不是将其留给数据库。

. . 有更好的选择吗?提示,想法,类似的经历?

0 投票
1 回答
292 浏览

mysql - Mysql 5.0.51 vs 5.1.66 性能问题

我有 2 台 mysql 服务器

服务器 A 有 mysql 5.0.51 - 8GB RAM 单四核 服务器 B 有 mysql 5.1.66 - 64GB RAM - 2x 四核

运行以下查询

来自用户 U

在服务器 A 上,它在 27 秒内完成

在服务器 B 上它永远不会完成 - 我只是在发送数据 400 秒后终止它。

这是来自服务器 A 的配置变量

join_buffer_size 131072 key_buffer_size
16777216
myisam_sort_buffer_size 8388608
net_buffer_length 16384
preload_buffer_size 32768
read_buffer_size 131072
read_rnd_buffer_size 262144
sort_buffer_size 2097144

和服务器 B 一样

join_buffer_size 131072 key_buffer_size
16777216
myisam_sort_buffer_size 8388608
net_buffer_length 16384
preload_buffer_size 32768
read_buffer_size 131072
read_rnd_buffer_size 262144
sort_buffer_size 2097144
sql_buffer_result OFF

我只是想不通为什么它不能在更快、更强大的服务器上完成。

我在网上找到了一些帖子,但他们都提到这是一个“索引”问题,但我无法理解两台机器之间有什么不同,今天早上我把所有索引都转储了,所有索引都重新导入了.

任何帮助将非常感激!

用解释代码更新

服务器 A

服务器 B

在两个地方运行解释之前,我设置了 SESSION SQL_BUFFER_RESULT= ON - 结果仍然相同!

0 投票
1 回答
227 浏览

jquery - 最小化 jQuery ajax 解析的 http 请求

我创建了下面的函数,它基本上解析给定 url 的 HTML,扫描某个类并处理它找到的文本:

我的功能的一个小样本:

我调用了这个函数 15 次,因为我需要显示几个可以从几个页面收集的数据。使用这种方法,我希望http请求的数量与调用函数的数量相同(15)。但是,我得到了一个非常大的数字(340),这意味着在解析 HTML 时,它还会在后台请求我调用的 url 中包含的所有图像。这意味着页面的加载时间是不可接受的(5-6 秒)。

我的问题是:我可以优化此功能,使其将 HTML 作为纯文本读取,而不在后台加载所有图像吗?有没有办法最小化这些请求?

注意:不幸的是,PHP 不是一个选项。

0 投票
3 回答
387 浏览

sql-server - 更新/删除查询的性能

我想用同一张表生成的值更新我的表。

我的目标是使用 proftxt 搜索所有行,如 _NS 和 _WP 并使用相同的 ao,将它们相加,
将值除以该 ao 的 _H、_G、_L 元素的数量,然后将此值添加到 _H、_G 和_L对象的那个ao。

ao 可能只有 _NS 和 _WP 行。比例程要跳过这个ao。

例子:

我的数据看起来像:

我的数据应该是这样的:

我的例程适用于少量测试数据。

更新功能结束,同时在真实数据库上工作,成功 13 小时后。
但它只编辑了 210000 行中的 5000 行。

我知道例行程序超级慢,但我该怎么办?