美文网首页
数据库优化方法

数据库优化方法

作者: 小码弟 | 来源:发表于2018-10-18 21:08 被阅读0次
th.jpg

互联网数据一般都存在数据库中,如何高效快速的读写数据库对于高并发的服务至关重要。下面总结最近接触到的方法。

  1. 数据分区
    对海量数据的查询优化,一种重要方式是如何有效的存储并降低需要处理的数据规模,所以我们可以对海量数据进行分区。例如,针对年份存取的数据,可以按照年进行分区,不同数据库有不同的分区方式,但处理机制却大体相同。例如SQLserver的数据分区将不同的数据存于不同的文件组中,而不同的文件组存在不同的磁盘分区下,这样把数据分区,减少磁盘IO和系统负荷。
  2. 索引
    索引一般可以加速数据的检索数据,加速表之间的连接,对表建索引包括在主键上建立聚簇索引,将聚合索引建立在日期列上。
    索引优点很多,但是对于索引的建立,还需要考虑实际情况,而不能对每个列都建索引。如果表结构很大,你要考虑到建立索引和维护索引的开销,索引本身也占物理空间,动态修改表也要动态维护索引,如果这些开销大过索引带来的速度优化,那就得不偿失了。
  3. 缓存机制
    当数据量增加时,一般的处理工具都考虑到缓存问题,缓存大小的设置也关系到数据处理的表现。例如,处理2亿条数据聚合操作时,缓存设置为100000条/buffer合理。
  4. 加大虚存
    由于系统资源有限,而需要处理的数据量非常大,当内存不足时,适量增加虚存来解决。
  5. 分批处理
    由于处理信息量巨大,可以对海量数据进行分批处理(类似云计算的MapReduce),然后再对处理后的数据进行合并操作,分而治之,这样有利于处理小数据。
  6. 使用临时表和中间表
    数据量增加时,处理中要考虑提前汇总,这样做的目的是化整为零,大表变小表,分块处理完成后再利用一定的规则进行合并,处理过程中的临时表的使用和中间结果的保存都非常重要。如果对超海量的数据,大表处理不了,只能拆分为多个小表。如果处理过程中需要多步汇总操作,则可按汇总步骤一步一步来。
  7. 优化查询语句
    查询语句的性能对查询效率的影响非常大。尽量早地缩小查询范围。
  8. 使用视图
    视图是表的逻辑表现,不占用物理空间。对于海量数据,可以按一定的规则分散到各个基本表中,查询过程基于视图进行。
  9. 使用存储过程
    在存储过程中尽量使用SQL自带的返回参数,而非自定义的返回参数,减少不必要的参数,避免数据冗余
  10. 用排序来取代非顺序存储
    磁盘臂的来回移动使得非顺序磁盘存取变成了最慢的操作,但是在SQL语句中这个现象被隐藏了,这样就使得查询中进行了大量的非顺序页查询,降低了查询顺序。
  11. 使用采样数据进行数据挖掘
    基于海量数据的数据挖掘方兴未艾,面对超海量数据,一般的挖掘算法往往采用数据抽样的方式进行处理,这样误差不会太大,大大提高处理效率和处理的成功率。一般采样时应注意数据的完整性,防止过大的偏差。

相关文章

  • 适合开发人员实用数据库优化技巧整理

    数据库优化方法整理 特别说明: 本文只是面对数据库应用开发的程序员,不适合专业 DBA ,DBA 在数据库性能优化...

  • joins;select;group的区别和用法

    遇到的问题 数据库中用joins优化性能 解决方法 用joins来优化性能 查询的资料 数据库中的group by...

  • zabbix优化之进阶版

    官网调优 1. 数据库优化 1.设置数据库分区优化,buffer优化,hash优化, 说明:数据库分区优化的优点:...

  • (转)Java面试重难点剖析(部分)

    1、高并发访问数据库优化方法 2、java finalize方法总结、GC执行finalize的过程 3、简单理解...

  • 数据库优化方法

    互联网数据一般都存在数据库中,如何高效快速的读写数据库对于高并发的服务至关重要。下面总结最近接触到的方法。 数据分...

  • 数据库优化方法

    常见的数据库优化方法如下:(1) 选择优秀的数据库管理工具(2)数据分区对海量数据进行分区操作提高效率,如针对年份...

  • 数据库存储原理特性索引优化

    说一下mysql数据库存储的原理? 事务的特性? 数据库索引 数据库怎么优化查询效率? 数据库优化方案 优化索引、...

  • Java面试重难点剖析(不断更新)

    Java面试重难点剖析(不断更新) 1、高并发访问数据库优化方法 2、 java finalize方法总结、GC执...

  • MySQL优化

    数据库SQL优化大总结之 百万级数据库优化方案

  • 数据库索引创建与优化

    对于数据库的优化主要包括三个部分:查询优化、索引优化和字段类型优化,其中,索引优化则是数据库优化的重中之重。一个查...

网友评论

      本文标题:数据库优化方法

      本文链接:https://www.haomeiwen.com/subject/rnoszftx.html