首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我还能做些什么来优化这个查询呢?

我还能做些什么来优化这个查询呢?
EN

Stack Overflow用户
提问于 2013-11-11 21:06:39
回答 2查看 60关注 0票数 2

场景:有150万至200万条记录的表

我需要执行一个删除旧记录的查询,条件中使用的唯一字段是日期。我已经为该字段添加了一个索引。

问题:查询执行时间太长(超过14分钟)。

这就是我迄今所做的

代码语言:javascript
运行
AI代码解释
复制
mysql> create index idx_logs_log_date ON logs (log_date);
Query OK, 0 rows affected (9.00 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> EXPLAIN SELECT * from logs where log_date < "2013-09-11";
| id | select_type | table | type | possible_keys     | key  | key_len | ref  | row |Extra

+----+-------------+-------+------+-------------------+------+---------+------+-----+-----

|  1 | SIMPLE      | logs  | ALL  | idx_logs_log_date | NULL | NULL    | NULL | 1420480 | Using where |


1 row in set (0.00 sec)



mysql> delete from logs where log_date < "2013-09-11";

Query OK, 1163008 rows affected (14 min 20.87 sec)

我还尝试删除该索引,并在字段中添加一个键(当然这会创建一个新的索引),但是响应时间没有得到改善。

那么,我的问题是,对于如何提高响应时间,你还有其他的想法吗?

编辑:

代码语言:javascript
运行
AI代码解释
复制
mysql> SELECT COUNT(id) FROM logs WHERE log_date < "2013-09-14";
+-----------+
| COUNT(id) |
+-----------+
|   1182688 |
+-----------+
1 row in set (0.58 sec)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-11 21:11:15

最有可能的不是过滤器速度慢,而是删除行(通过测量执行SELECT COUNT(id) FROM logs WHERE log_date < "2013-09-14"所需的时间来测试)。

为了加快速度,您需要调整一些服务器设置。但是,如果您只是将基于时间的日志保存在最后的X时刻,而不是希望查看基于日期的分区,那么您可以在不再需要时删除该表。

票数 3
EN

Stack Overflow用户

发布于 2013-11-11 22:09:03

由于SELECT count(*) from logs where log_date >= "2013-09-11";返回253736,SELECT * from logs where log_date < "2013-09-11";返回1163008,所以我推断索引实际上正在降低性能。

代码语言:javascript
运行
AI代码解释
复制
DROP INDEX `idx_logs_log_date` ON logs;
delete from logs where log_date < "2013-09-11";
create index idx_logs_log_date ON logs (log_date);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19921282

复制
相关文章
网络安全 - 我们还能做些什么?
网络安全已经不再是IT团队的问题,因为它的含义已经从对市值的不良影响上升到上市公司的CEO被解雇,从政府和最高法院之间的激烈辩论到修改全球选举结果等所有因素都产生了不利影响 。今天的网络攻击对各地的每个人,企业和政府都有现实意义。
双愚
2018/07/25
4350
技术人除了焦虑,你还能做些什么?
17年3月,“华为大力清洗34岁+的老员工”的消息从华为的心声论坛传出,具体内容是华为职工反映,中国区开始集中清理34岁以上的交付工程维护人员。而研发开始集中清退40岁以上的老员工,主要针对程序员。
疯狂的技术宅
2019/03/27
3550
技术人除了焦虑,你还能做些什么?
机器人时代人类还能做些什么?
看过《机械公敌》的朋友一定对里面无所不在的机器人印象深刻,它们出现在人类生活的各个领域之中,而社会中的大部分工作也是由它们所完成的。那么这种情况是好是坏呢?当人类社会迈入到机器人时代,人类自身还能做些什么?《连线》杂志网络版日前发文对此进行了分析,以下是文章的主要内容。 自20世纪60年代初机械臂开始取代汽车工人开始,机器人充当劳动力的角色已经有数十年的历史了,未来它们涉足的领域将会越来越多。乐观主义者认为,更多的机器人将会带来更大的生产力和经济增长,而悲观主义者则认为日益普及的机器人将会让现有的大批劳动者
机器人网
2018/04/12
6640
机器人时代人类还能做些什么?
机器人时代人类还能做些什么?
看过《机械公敌》的朋友一定对里面无所不在的机器人印象深刻,它们出现在人类生活的各个领域之中,而社会中的大部分工作也是由它们所完成的。那么这种情况是好是坏呢?当人类社会迈入到机器人时代,人类自身还能做些什么? 自20世纪60年代初机械臂开始取代汽车工人开始,机器人充当劳动力的角色已经有数十年的历史了,未来它们涉足的领域将会越来越多。乐观主义者认为,更多的机器人将会带来更大的生产力和经济增长,而悲观主义者则认为日益普及的机器人将会让现有的大批劳动者失业,进而引发一系列的社会问题。 每一种论调都有自己的道理,
机器人网
2018/04/13
4270
四十岁的程序员离职后,还能做些什么?
讲一个真实的故事,有个同事已经写了20多年的代码,开发经验非常丰富,在一个不大的小公司,带着一帮刚毕业没多久的年轻程序员做产品,大约搞了两年的时间,产品已经在线上能用了,带的小徒弟学的快已经能够接手里面部分模块了,这个时候老板开始觉得这个老家伙拿的工资太高,几次谈话表达出要给降工资的意愿,这种事情放在谁身上都会接受不了,几次谈话都没有什么结果,最后老板实在忍不住了开始用一些很恶心的方法排挤打压企图让这老家伙自动离职,结果我这同事社会经验也是比较烦丰富直接告到了劳动仲裁,这下老板慌了没想到一个小员工还能做出这种事情,最后场外和解了,公司补偿了一部分钱,然后离职了,通过这件事让我这同事彻底不想打工了,然后仔细梳理了这些年做过的项目,同时对市场做了很多调研最后发现一个不错的商机,然后找到投资人并且成功融到钱,现在项目已经启动了而且还做得很不错,这是被迫逼出来的机会,当然遇到这种恶心的老板的概念也是比较小,但作为四十岁的程序员后面的路如何去走,却是一个非常大的课题。
程序员互动联盟
2018/12/14
7.9K0
保障服务性能,除了压测我们还能做些什么
在保障服务性能的时候,发现除了传统的通过压测发现后台接口性能问题,确保足够的容量供服务使用以外,还需要做许多事情,才能来确保服务的性能达标万无一失。
Nanako
2021/02/22
6810
保障服务性能,除了压测我们还能做些什么
AlphaFold能做些什么?
十多年来,分子生物学家Martin Beck和他的同事一直在努力拼凑世界上最难的拼图之一:人类细胞中最大的分子机器的详细模型。
Chris生命科学小站
2023/02/28
1.4K0
AlphaFold能做些什么?
运维做些什么?
粗略地看出运维应该做的事情包括一下几项: 部署:包括基础设施的资源部署、软件环境的部署 业务上线:代码发布,手工>半自动>全自动 稳定运行:保障用户进入网站页面后能一直顺利地完成整个业务流程 监控:监控运行过程中的各种状态,告警配置 备份:系统备份,数据备份,配置信息备份等等,全量、增量、差异
PM吃瓜
2023/03/02
6760
运维做些什么?
2021年我还能选择大数据这个行业吗?
众所周知,我们经常可以听到说程序员月薪几万,年薪几十万上百万,可能很多不了解的外行朋友听来会觉得是不是有些浮夸,但是可以负责任的告诉你,这些都是真的。而且我们还可以发现,近几年对这方面的人才需求可以说是有增无减,无论是上市公司还是国企或者是更多的私企小型企业都在不停的对这方面人才进行大规模的招聘,随便打开哪个求职app,你都可以发现对这个岗位的需求比比皆是。
成都加米谷大数据
2021/03/02
4960
2021年我还能选择大数据这个行业吗?
聊聊架构设计做些什么来谈如何成为架构师
  也因为碎片化的时间多了,所以开始刷某乎了,关注了架构相关的板块,也顺手回答了一些问题。发现有很多同道中人正在经历着我前两年经历的阶段,对于做架构没有相对具象的一些理解,更没有系统化的认识。所以把最近回答的一些内容整理一下,权当记录,留给3年后的自己~
Zachary_ZF
2018/09/10
4910
聊聊架构设计做些什么来谈如何成为架构师
我的Mysql查询SQL优化总结
当我们遇到一个慢查询语句时,首先要做的是检查所编写的 SQL 语句是否合理,优化 SQL 语句从而提升查询效率。所以对 SQL 有一个整体的认识是有必要的。
程序员小明
2019/10/10
1.8K0
我的Mysql查询SQL优化总结
为什么AlertDialog要使用Builder来构建呢
首先说句废话,因为 AlertDialog 太过复杂,内部参数太多,然后不使用构建者模式那么 AlertDialog 的构造方法就可能是:
开发者
2019/12/26
5410
KMP算法还能干这个
https://leetcode-cn.com/problems/repeated-substring-pattern/
代码随想录
2021/07/16
4670
钻石公主号发放iPhone进行远程问诊 除此之外他们还能做些什么?
被困在钻石公主号的乘客刚刚度过了可能是他们人生当中最郁闷的一个情人节。这座豪华邮轮目前仍然停留在横滨港,除少数被感染者之外的大部分人员不被允许离开,大多数时间他们甚至都不能离开自己的房间。而根据日本厚生劳动省公布的最新数据,钻石公主号上共确认285例新冠肺炎病例。 在2月14日情人节,已经25天没有踏上陆地的乘客们收到了各式各样的情人节礼物,包括玫瑰花、巧克力、护手霜、眼罩和面膜等等,以及一部iPhone。 钻石公主号被困乘客晒出情人节礼物 但这些iPhone可不是为了补偿乘客被困所产生的不便。它
腾讯大讲堂
2020/02/25
5030
钻石公主号发放iPhone进行远程问诊 除此之外他们还能做些什么?
性能优化-放开那片内存,让我来!
假设你已经通过《perf:一个命令发现性能问题》中的方法或者使用profiler分析,已经发现内存分配是性能瓶颈:
编程珠玑
2021/01/05
1K0
数学还能这么学?高中要有这个网站我早就及格了
之前我们介绍过全交互的线性代数书和可视化的统计概率入门书,今天我们就来看一看「这本有趣的基础数学书」:Mathigon。Mathigon 提供交互式学习方式、个性化学习服务和故事化的教学内容,试图改变原本枯燥的数学学习方式,为数学学习过程注入活力,保护和提升学习者的好奇心、创造力和想象力。
机器之心
2019/04/29
7660
数学还能这么学?高中要有这个网站我早就及格了
Ubuntu安装好后做些什么
      想要驾驭好Ubuntu可不是一件简单的事情。为了使Ubuntu更加的好用,安装好Ubuntu后该做如下事情。
jiewuyou
2022/09/23
9360
Ubuntu安装好后做些什么
Python高居顶级编程语言交互排行榜第一,你要做些什么呢?
关键字全网搜索最新排名 【机器学习算法】:排名第一 【机器学习】:排名第二 【Python】:排名第三 【算法】:排名第四 IEEE Spectrum 发布了2017年顶级编程语言交互排行榜,Python高居第一。Python的排名从2016年开始就借助人工智能持续上升,在人工智能的各个领域,包括机器学习、深度学习以及大数据分析等的应用越来越广泛。 Python是一种面向对象的解释型计算机程序设计语言,可以处理系统运维、图形处理、数学处理、文本处理、数据库编程、网络编程、web编程、多媒体应用、pymo引擎
昱良
2018/04/08
8080
分库分表,我为什么要用Shardingsphere呢?
分库分表推荐Spring Cloud Alibaba+Seata+Shardingsphere
35岁程序员那些事
2022/09/23
1.5K0
数学还能这么学?高中要有这个网站我早就及格了
今天我们就来看一看「这本有趣的基础数学书」:Mathigon。Mathigon 提供交互式学习方式、个性化学习服务和故事化的教学内容,试图改变原本枯燥的数学学习方式,为数学学习过程注入活力,保护和提升学习者的好奇心、创造力和想象力。
代码医生工作室
2019/08/27
6810
数学还能这么学?高中要有这个网站我早就及格了

相似问题

我还能做些什么来优化这个MySQL查询呢?

32

我能做些什么来优化这个查询?

12

我可以做些什么来优化这个SQL查询

20

我还能做些什么来提高SQL查询的性能呢?

34

我能做些什么来优化这个mysql查询吗?

22
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档