面试DB优化
高频全表扫描 |
0.5 |
表大小超过200M,且SQL高频执行(15分钟内超过500次),PIR 3级,表大小超过高速缓存的1.5%,报PIR 2级。 |
禁止使用select * |
0.5 |
禁止使用select * ,必须明确选择所需的列,每句SQL扣0.5分。 |
禁止出现重复查询子句 |
0.5 |
可以使用with as替换子句来提升SQL语句执行效率,每句SQL扣0.5分。 |
索引列函数 |
0.5 |
在查询索引列上发生函数调用(函数索引除外),每次扣0.5分。 |
update禁止出现order by子句 |
0.5 |
防止DML过程出现不必要的排序,每句SQL扣0.5分。 |
update必须出现where子句 |
1.0 |
防止DML过程出现全表锁,每句SQL扣1分。 |
禁止更新主键列值 |
1.0 |
不允许有SQL更新主键,每次SQL扣1分。 |
禁止嵌套select子句 |
0.5 |
防止出现select子句的嵌套子查询,避免出现性能问题,每句SQL扣0.5分。 |
delete必须出现where子句 |
1.0 |
防止DML过程出现全表锁,每句SQL扣1分。 |
delete禁止出现order by子句 |
1.0 |
防止DML过程出现不必要的排序,每句SQL扣0.5分。 |
索引全扫 |
0.1 |
执行计划里有INDEX FULL SCAN操作,每次扣0.1分。 |
索引跳跃 |
0.2 |
执行计划里有INDEX SKIP SCAN操作,每次扣0.2分。 |
全表扫描 |
0.5 |
对于大于200M的表全表扫描,执行计划里有TABLE ACCESS FULL操作,每次扣0.5分。 |
笛卡尔积 |
1.0 |
缺少连接条件,导致SQL使用笛卡尔积的方式进行连接,每句SQL扣1分。 |
嵌套连接过深 |
1.0 |
执行计划中嵌套连接深度超过6层,每句SQL扣1分。 |
绑定变量 |
0.2 |
未使用绑定变量的SQL,每句SQL扣0.2分。 |
隐式转换 |
0.5 |
在查询列上发生隐式转换,每次扣0.5分。 |
面试DB优化的更多相关文章
- Python面试-DB相关
昨日回顾: 面试 Python综述 设计哲学 版本变迁及发展 GIL 内存管理及垃圾回收 并发并行 昨日作业一:Python是否存在内存泄露 作业二:过往的项目中有没有出现过性能问题? 作业三:什么是 ...
- 海量数据挖掘--DB优化篇
上一篇博客我们介绍了针对大数据量的处理,我们应该对程序做什么样的处理,但是一个程序的优化是有底线的,我们要考虑人力,物力,程序的优化是海量数据处理的一部分,这里介绍我们的重头戏,对数据库的优化! 这里 ...
- 关于面试mysql优化的几点纪要
1.减少查询次数 ,如何减少 ? 2. 表结构优化,如何优化 ? 3. 列选取原则 ? 4.建索引原则 ? 5.mysql语句优化 ? 6.增加mysql处理性能 ? 通过这几点, 再来说 ...
- PHP 面试服务器优化和大数据
服务器配置优化 系统参数调整 Linux 系统内核参数优化 vim /etc/sysctl.conf net.ipv4.ip_local_port_range = 1024 65535 # 用户端口范 ...
- MySQL db优化
http://blog.csdn.net/likika2012/article/details/38816037 http://www.nowamagic.net/librarys/veda/deta ...
- Oracle DB优化
http://www.jb51.net/article/77876.htm http://www.jb51.net/article/56881.htm http://danni505.blog.51c ...
- (转载)一张表搞清楚西门子S7系列标准DB块与优化DB块
在TIA Portal中为S7-1200/S7-1500 CPU 添加一个 DB 块时,其缺省属性为优化的 DB ,优化的 DB 块与标准的 DB 块整体对比如下表所示: 项 标准 DB 优化 DB ...
- Sql Server优化之索引提示----我们为什么需要查询提示,Sql Server默认情况下优化策略选择的不足
环境: Sql Server2012 SP3企业版,Windows Server2008 标准版 问题由来: 最近在做DB优化的时候,发现一个存储过程有非常严重的性能问题, 由于整个SP整体逻辑是一个 ...
- Dynamic CRM 2013学习笔记(七)追踪、监控及性能优化
本文将介绍CRM的三个内容追踪.监控及性能优化.追踪是CRM里一个很有用的功能,它能为我们的CRM调试或解决错误.警告提供有价值的信息:我们可以用window的性能监控工具来了解CRM的性能状况:最后 ...
随机推荐
- problems when installed mysql in linux ubuntu
reference:http://www.jb51.net/article/87160.htm?pc 1.ERROR 2002 (HY000): Can't connect to local MySQ ...
- docker配置桥接网络
[root@localhost ~]# cd /etc/sysconfig/network-scripts/ [root@localhost network-scripts]# cp ifcfg-et ...
- redis之(十八)redis的支持水平扩容的集群特性,以及插槽的相关操作
[一]主从集群的缺点,客户端分片的缺点 (1)主从+哨兵的redis集群,只是做主从备份,数据冗余的一种处理.但在存储空间的扩展上还是有限制.因为集群中的节点都是存储同样的数据.单一节点的容量,就可以 ...
- hdu 2044-2050 递推专题
总结一下做递推题的经验,一般都开成long long (别看项数少,随便就超了) 一般从第 i 项开始推其与前面项的关系(动态规划也是这样),而不是从第i 项推其与后面的项的关系. hdu2044:h ...
- python调用.so
python调用动态链接库的基本过程 动态链接库在Windows中为.dll文件,在linux中为.so文件.以linux平台为例说明python调用.so文件的使用方法. 本例中默认读者已经掌握动态 ...
- 196. Delete Duplicate Emails
Write a SQL query to delete all duplicate email entries in a table named Person, keeping only unique ...
- JS中的对象和方法简单剖析
众所周知,在js中对象就是精髓,不理解对象就是不理解js. 那么什么事js中的对象呢? 在js中,几乎一切皆对象: Boolean ,String,Number可以是对象(或者说原生数据被认作对象): ...
- UVALive - 7042 The Problem to Make You Happy 博弈
题目大意:给你一个有向图, Bob 和 Alice 在做游戏,每轮他们走一步,当Bob 和 Alice在同一个点或者 Bob无路可走,Bob输,否则Alice输. 思路:因为在Bob赢的时候存在有环的 ...
- YII2源码阅读:autoload_real.php 22~23行
spl_autoload_register(array('ComposerAutoloaderInit32b8eb537f8e12e57c5e7bade69d01f0', 'loadClassLoad ...
- LOJ #6279. 数列分块入门 3-分块(区间加法、查询区间内小于某个值x的前驱(比其小的最大元素))
#6279. 数列分块入门 3 内存限制:256 MiB时间限制:1500 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: hzwer 提交提交记录统计测试数据讨论 3 题目描述 给 ...