Schema的优化和索引 - 开篇

注:

Schema:在数据库系统中,数据库管理系统(DBMS)用自身所支持的语言来描述的结构。在关系数据库中,schema定义了表,每个表的字段,以及字段与表之间的关系。在文中,Schema将不翻译为中文。

 

前言

优化一个设计不当或者错误使用索引的Schema,可以数量级的提高性能。如果需要高性能,你必须对于将要执行的具体语句设计Schema和索引。你也应该对于不同种类的语句进行性能的评估,因为修改成一个语句或者schema的一部分可能会引发其他的一些连带效应。优化往往涉及到了折中。比如,添加索引会增加查询速度,但会降低更新速度。同样的,非范式的schema能提高一些语句的执行速度,但是可能在其他的速度就会降低。添加计数和汇总表是个好的优化语句的方式,但是他们增加了维护的难度。

 

一些时候你可能已经超出了开发人员的角色了以及你会有一些有疑问的需求。那些并不是数据库系统专家的人常常写一些业务需求并不会考虑性能。如果你说明一些小功能会需要两倍于当前服务器的配置,那么他们可能会决定取消这个功能。

 

Schema和索引的优化不但需要注意细节,也要有个大局观。你需要知道整个系统,这样才能理解每一部分对另外一些的影响。这一章节首先讨论数据类型,之后涵盖了索引策略以及数据库范式。最后一些关于存储引擎的信息。

 

在阅读完语句优化那张之后,你可能需要重新回顾下这一章。许多这一章讨论的主题,尤其是索引,都不是独立的。你必须熟悉语句优化以及服务器的调整,才能正确的使用索引。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值