数据库系统分层优化

网上有丰富的数据库优化方案,但是大多都是零零碎碎,系统地介绍数据库优化的很少。笔者根据自己的经验,以及参考了其他高手的优化文章,整理一份系统的优化方案。

数据库优化的目的是提高DB的工作效率,减少响应时间。基于此,笔者认为应该从如下四个层次来优化数据库性能。

  • 硬件层面优化
  • 操作系统/DBMS层面优化
  • DB设计层面优化
  • 程序设计层面的优化
    1. 硬件层面优化
      该层面的优化是最底层的,包括内存、CPU、磁盘/磁盘阵列等硬件的优化。虽然可优化的点并不多,但是在整个数据库优化中不可或缺。
    2. 操作系统/DBMS层面的优化
      包括DBMS的选择、缓存的设置、数据文件的存储位置及方法(连续存储/随机存储)、存储引擎的选择(MySQL里面会有多个引擎)、I/O优化(磁盘I/O、逻辑I/O)。该层面的优化内容相对不多,但是数据库优化的瓶颈一般都在这里。
    3. DB设计层面优化
      该层面可优化的点很多,包括数据库范式、数据表结构、数据类型、视图、索引、表/字段冗余、表分割(水平分割及垂直分割、分类分割)、表触发器、命名等多方面,而且每个方面又有很多的知识点,这是数据库优化的基础。
    4. 程序设计层面优化
      这里由程序员控制层面的优化。包括SQL语句、存储过程、临时表、业务逻辑、算法设计、运算符、条件顺序、数据库函数。这层的知识点比较散,而且多。程序员应该下功夫的地方。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值