面试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的性能状况:最后 ...
随机推荐
- core dump使用方法、设置、测试用例
core dump使用方法.设置.测试用例 http://blog.csdn.net/liuzhuchen/article/details/21975227
- gcc -rpath 指定动态库路径
gcc -rpath 指定动态库路径 http://blog.csdn.net/v6543210/article/details/44809405
- Window Server 2008 R2 安装 Share Point 2013
原文地址:http://www.cnblogs.com/jianyus/p/3631905.html
- Mui自定义时间格式:
Mui自定义时间格式: (function($) { $.init(); $(document).on('tap','.btn',function(){ var obj = getFormJson($ ...
- 16:django 有条件的视图处理(Last-Modified和ETag)&&加密签名
有条件的视图处理 上一节我们介绍了缓存来减轻服务器的负担,这里的有条件的视图处理也从一定程度上减轻了服务器的负担,在正式介绍之前,先来看两个概念:Last-Modified和ETag Last-Mod ...
- Git 分支 - 分支的新建
https://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0%E5%BB%BA% ...
- nutch 抓取需要登录的网页
题记:一步一坑,且行且珍惜 最近接到任务,要利用nutch去抓取公司内部系统的文章,可是需要登录才能抓到.对于一个做.net,不熟悉java,不知道hadoop,很少接触linux的我,这个过程真是艰 ...
- jquery&javascript 跨域jsonp
$(function(){ $.ajax({ type: "get", async: false, url: "http://flightQuery.com/jsonp/ ...
- Struts2 + Hibernate3.3 开发简单的登录注册功能【J2EE】
开发环境: IDE:Myeclipse10.0 数据库:Oracle(SQL Developer) Web容器:Tomcat 7.0 JDK:1.6 Struts:2.0 Hibernate:3.3 ...
- Keras 训练时出现 CUDA_ERROR_OUT_OF_MEMORY 错误
不用惊慌,再试一次.估计当时GPU内存可分配不足,可手动结束所有python程序后释放相关GPU内存,或者重新运行一次终端