首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >糟糕的数据库布局会导致简单查询的性能问题吗?

糟糕的数据库布局会导致简单查询的性能问题吗?
EN

Database Administration用户
提问于 2012-05-29 15:57:11
回答 2查看 191关注 0票数 1

我有一个真正混乱的数据库布局,需要优化。数据库的布局和执行的一些查询是否也会导致其他查询速度慢呢?

例如,具有大约100 000行的insert表需要9秒才能执行。它是由糟糕的数据库布局引起的,还是应该在其他地方搜索性能瓶颈?

我有三张桌子:

  • aiki_users
  • ocal_files (与id和用户名连接,而不是外键/refeerence),我在字段中有标记(由coma代替分隔表)。
  • 带有收藏夹的ocal_favs (假设与ocal_files和aiki_users连接),但没有真正的连接(外键)

有一些以这种方式使用LIKE的缓慢查询:upload_tags not like '%pd_issue%'

代码语言:javascript
运行
复制
select *
from ocal_files
where upload_tags LIKE '%summer2010%'

这些需要5-7秒才能运行(在重负荷下).在沉重的负荷(现在),我们有200个活跃用户(由谷歌分析显示)。

使用大量LIKERLIKE搜索的一些最常见的查询被Sphinx所取代;这些页面运行得很快。

EN

回答 2

Database Administration用户

回答已采纳

发布于 2012-05-29 16:36:36

是的,慢查询会导致其他查询变慢。

服务器只有有限数量的IO可以做,如果它忙着做繁重的类似操作,在你的情况下,它不能使用索引,它会使其他查询变慢。

票数 2
EN

Database Administration用户

发布于 2012-05-29 21:37:59

是的,您需要重新考虑您的模式和查询。

像‘%.’这样的foo --不能在foo上使用索引

9秒来插入一行--其他查询占用了表。(对于如何/为什么,有许多可能的解释。)

考虑全文而不是类似的

考虑使用带有“标记”的单独表。主桌将是一对一的。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/18521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档