数据库优化工程师必看 第一部分(索引、视图)

发布时间:2020-07-15 14:27:18 作者:一盏烛光
阅读:793
亿速云数据库,弹性扩容,低至0.3元/天! 查看>>

数据库优化工程师必看 第一部分(索引、视图)

防伪码:勤劳一日,可得一夜安眠;勤劳一生,可得幸福长眠

       在本章技术详解之前,先分享一个今天晚上和一个做IT的学弟的沟通总结:

我们从八点多聊到十点 ,他主要做Linux高级运维,大部分时间还是做数据库的一些工作, 按理说还是我的小师弟 。哈哈。 他说, 刚毕业从一家外资高新技术企业跳糟到一家国企,工资涨了小2000,现在税后也是8500。 但是,他非常后悔。我说以前的公司该是多么强大,让你宁可每个月少挣好几千也想回到以前的公司, 他说老表,工资不是衡量一个人价值的唯一标准, 给你举例说明你就知道这个公司有多厉害了 ,这家公司叫青牛(北京)技术有限公司,主要做融合网络的 最重要的是大多数的员工,自主的要求无偿加班,回忆起我以前刚毕业在那家软件公司上班的情景,总之效率特别高,例如经理下达一个命令到技术部,要求中午下班之前完成,六七个部门的员工帮我一起完成,而我现在在xx国企,想做个备份,不知道秘钥号码,问经理、测试工程师、问遍了,哎, 等我知道了秘钥号,本来上午十点可以做完的事情。 结果,下午两点才刚刚开始 ,如果给我一次重新选择的机会,我一定选择拥有强大战斗力和文化底蕴的公司,我在青牛仿佛看到了未来的第二个阿里巴巴集团。我其实总结一下 就是:眼光决定格局 选择决定未来 用我恩师的话说:公司文化的力量很大程度上决定他能走多远飞多高!

   现在是凌晨0:54分,我们正式开始索引和视图的详解,希望就像博客昵称“一盏烛光“那样,去帮助更多的人解决实际问题,谢谢各位的支持。我将持续更新更多原创技术文档。

注:INDEX=aaa,即索引=索引名。虽然可以指定SQL Server按哪个索引进行数据查询,但一般不需要人工指定,SQL Server将会根据所创建的索引,自动优化查询。其实,使用索引可加快数据检索速度,但为每个列都建立检索没有必要。因为检索自身也需要维护,并占用一定资源。

案例二:验证索引的作用

 

1、 首先创建一个数据量大的表,名称为“学生表”,分别有三列,学号,姓名和班级,如下图所示,学号为自动编号,班级为默认值“一班”。

数据库优化工程师必看 第一部分(索引、视图)

2、 向表中插入大量数据,数据越多,验证索引的效果越好。

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

我们可以右击,选择前1000行,效果如下:

数据库优化工程师必看 第一部分(索引、视图)

4、使用语句查询第900000行的数据,Select * from 学生表 Where 学号=900000

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

6、为了下面分析文件更准确,多执行几次Select * from 学生表 Where 学号=900000

数据库优化工程师必看 第一部分(索引、视图)

注:这里选择第一项 ,跟踪文件。然后保存至桌面,效果如下:

数据库优化工程师必看 第一部分(索引、视图)

7、 打开“数据库引擎优化顾问”,添加跟踪文件,进行分析,发现索引建议,需要建立索引。

数据库优化工程师必看 第一部分(索引、视图)

注意:选择benet数据库中的学生表,然后点击“开始分析”

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

9、 再次执行Select * from 学生表Where 学号=900000

10、 打开sql server profiler查看跟踪的时间,发现查询时间大幅提升,说明索引可以提高查询速度。

数据库优化工程师必看 第一部分(索引、视图)

发现总计时间为1毫秒,几乎忽略不计,以至于几乎不花时间立即查询

案例四:分别练习创建各种索引

首先我们先来了解一下索引的分类以及选择索引列的注意事项:

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

我们掌握了学术性的理论后,将进行详细的试验操作来进一步巩固:

1、 创建聚集索引

数据库优化工程师必看 第一部分(索引、视图)

为tstudent表创建聚集索引

数据库优化工程师必看 第一部分(索引、视图)

选中studentID,单击左上侧的主键按钮

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

2、创建组合索引

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

3、用命令创建聚集索引

)

Go

数据库优化工程师必看 第一部分(索引、视图)

4、创建唯一索引

数据库优化工程师必看 第一部分(索引、视图)

5、创建非聚集索引---可以有重复值

数据库优化工程师必看 第一部分(索引、视图)

name='Tstudent')

Indid中1代表聚集索引

Indid中2代表唯一非聚集索引

Indidz中3代表非聚集索引

数据库优化工程师必看 第一部分(索引、视图)

二、视图

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

数据库优化工程师必看 第一部分(索引、视图)

在这里,一些举例试验就不再一一演示了,因为,在我看来,作为一名数据库管理员,必须要掌握数据库优化这项技能。

最好掌握一些基本的通用语法,虽说视图是个变量,随时更新变化,用起来很方便简洁,可直接在其基础上直接

执行:

例如

select * from 视图名

where 条件=xxx

很方便,但是视图毕竟有局限性,在性能和修改限制方面有待提高。

亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>

推荐阅读:
  1. 数据库优化之创建视图
  2. MySQL数据库优化方法

开发者交流群:

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

优化 数据库 化工

上一篇:c语言的基本语句有哪些

下一篇:RabbitMQ 可靠投递

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》
开发者交流群×