概念介绍开发人员喜欢在SQL脚本中使用WITH(NOLOCK), WITH(NOLOCK)其实是表提示(table_hint)中的一种。它等同于 READUNCOMMITTED 。 具体的功能作用如下所示(摘自MSDN): 1: 指定允许脏读。不发布共享锁来阻止其他事务修改当前事务读取的数据,其他事... ...
分类:
数据库 时间:
2018-10-20 22:18:11
阅读次数:
233
首先看两幅图,MySQL的逻辑架构和查询过程 客户端/服务端通信协议: MySQL客户端/服务端通信协议是“半双工”的:在任一时刻,要么是服务器向客户端发送数据,要么是客户端向服务器发送数据,这两个动作不能同时发生。一旦一端开始发送消息,另一端要接收完整个消息才能响应它,所以我们无法也无须将一个消息 ...
分类:
数据库 时间:
2018-10-18 20:47:22
阅读次数:
254
1、介绍 spark SQL是构建在spark core模块上的四大模块之一,提供DataFrame等丰富的API,运行期间通过spark查询优化器翻译成物理执行计划,并行计算输出结果,底层计算原理用RDD计算实现。 2、standalone模式下的spark和hive集成 1、在 /soft/sp ...
分类:
数据库 时间:
2018-10-16 22:01:43
阅读次数:
201
查询语句的优化是SQL效率优化的一个方式,可以通过优化sql语句来尽量使用已有的索引,避免全表扫描,从而提高查询效率; 1、在表中建立索引,优先考虑where、group by使用到的字段。 2、尽量避免使用select *,返回无用的字段会降低查询效率。如下: SELECT * FROM t 优化 ...
分类:
数据库 时间:
2018-10-05 18:47:14
阅读次数:
148
阅读目录 第一篇:初识数据库 第二篇:库操作相关 第三篇:表相关操作 第四篇:记录相关操作 第五篇:数据备份、pymysql模块 第六篇:视图、触发器、事务、存储过程、函数 第七篇:ORM框架SQLAlchemy 第八篇:索引原理与慢查询优化 ...
分类:
数据库 时间:
2018-10-04 18:27:58
阅读次数:
188
一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句的优化显然是重中之重。说起加速查询,就不得不提到索引了。 什么是索引? 索引在MySQL中也叫做“键 ...
分类:
数据库 时间:
2018-10-03 20:55:42
阅读次数:
190
说起MySQL的查询优化,相信大家收藏了一堆奇技淫巧:不能使用SELECT *、不使用NULL字段、合理创建索引、为字段选择合适的数据类型..... 你是否真的理解这些优化技巧?是否理解其背后的工作原理?在实际场景下性能真有提升吗?我想未必。因而理解这些优化建议背后的原理就尤为重要,希望本文能让你重 ...
分类:
数据库 时间:
2018-09-24 21:10:21
阅读次数:
179
索引原理与慢查询 阅读目录 - 一、介绍 - 二、索引的原理 - 三、索引的数据结构 - 四、聚集索引与辅助索引 - 五、MySQL索引管理 - 六、测试索引 - 七、正确使用索引 - 八、联合索引与覆盖索引 - 九、查询优化神器-explain - 十、慢查询优化的步骤 - 十一、慢日志管理 一、 ...
分类:
数据库 时间:
2018-09-20 22:58:02
阅读次数:
245
本文总结了30个mysql千万级大数据SQL查询优化技巧,特别适合大数据里的MYSQL使用。 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进 ...
分类:
数据库 时间:
2018-09-06 23:03:09
阅读次数:
247
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: 最好不要给数据库留NULL,尽可能的使用 NOT NULL填充数据库. 备注 ...
分类:
数据库 时间:
2018-09-06 18:09:36
阅读次数:
141