美文网首页
优化数据库对象

优化数据库对象

作者: 微日月 | 来源:发表于2017-09-03 10:19 被阅读12次

优化表的数据类型

procedure anylyse() 可以对当前应用的表进行分析,该函数可以对数据表中列的数据类型提出优化建议

select * from tablename procedure analyse();

通过拆分提高表的访问效率

这里所说的拆分,是指对数据表进行拆分。如果针对 MyISAM 类型的表进行,那么有两种拆分方法

  • 第一种是垂直拆分,即把主码和一些列放到一个表,然后把主码和另外的列放到另一个表中。如果一个表中某些列常用,而另一些列不常用,则可以采用垂直拆分,另外,垂直拆分可以使得数据行变小,一个数据页就能存放更多的数据,在查询时就会减少 I/O 次数。其缺点是需要管理冗余列,查询所有数据需要联合操作
  • 第二种方法是水平拆分,即根据一列或多列数据的值把数据行放到两个独立的表中。水平拆分通常在以下几种情况下使用:
    • 表很大,分割后可以降低在查询时需要读的数据和索引的页数,同时也降低了索引的层数,提高查询速度
    • 表中的数据本来就有独立性,例如,表中分别记录各个地区的数据或不同时期的数据,特别是有些数据常用,而另外一些数据不常用
    • 而要把数据存放到多个介质上

逆规范化

数据库设计时要满足规范化这个道理大家都非常清楚,但是否数据的规范化程度越高越好呢?这还是由实际需求来决定。因为规范化越高,那么产生的关系就越多,关系过多的直接结果就是导致表之间的连接操作越频繁,而表之间的连接操作是性能较低的操作,直接影响到查询的速度,所以,对于查询较多的应用,就需要根据实际情况运用逆规范化对数据进行设计,通过逆规范化来提高查询的性能

反规范的好处是降低连接操作的需求降低外码和索引的数目,还可能减少表的数目,相应带来的问题是可能出现数据的完整性问题。加快查询速度,但会降低修改速度。因此,决定做反规范时,一定要权衡利弊,仔细分析应用的数据存取需求和实际的性能特点,好的索引和其他方法经常能够解决性能问题,而不必采用反规范这种方法

在进行反规范操作之前,要充分考虑数据的存取需求,常用表表的大小,一些特殊的计算,数据的物理存储位置等。常用的反规范技术有增加冗余列,增加派生列,重新组表和分割表

另外,逆规范技术需要维护数据的完整性。无论使用何种反规范技术,都需要一定的管理来维护数据的完整性,常用的方法是批处理维护,应用逻辑和触发器

使用中间表提高统计查询速度

对于数据量较大的表,在其上进行统计查询通常会效率很低,并且还要考虑统计查询是否会对在线的应用产生负面影响。通常在这种情况下,使用中间表可以提高统计查询的效率

中间表复制原表部分数据,并且与原表相隔离,在中间表上做统计查询不会对在线应用产生负面影响

中间表上可以灵活的添加索引或正价临时用的新字段,从而达到提高统计查询效率和辅助统计查询作用

相关文章

  • Android 自带的数据库SQLite存储各种对象。

    Android 自带的数据库轻量级存储各种对象。 数据库的优化:http://www.jianshu.com/p/...

  • 优化数据库对象

    优化表的数据类型 procedure anylyse() 可以对当前应用的表进行分析,该函数可以对数据表中列的数据...

  • 优化数据库对象

    1. 优化表的数据类型 数据类型的选择,重点在于合适二字,如何确定选择的数据类型是否合适可参考如下: 使用可以存下...

  • zabbix优化之进阶版

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

  • MySQL 数据库对象优化

    1、优化表的数据类型 表需要使用何种数据类型是需要根据应用来判断的。虽然应用设计的时候需要考虑字段的长度留一定的冗...

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

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

  • MySQL优化

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

  • SQL优化之三--优化数据库对象

    在数据库设计的时候,用户可能会遇到这种问题:是否应该把所有表都按照第三范式来设计?表里面的字段到底该设置为多大才合...

  • 数据库索引创建与优化

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

  • 数据库调优

    数据库优化

网友评论

      本文标题:优化数据库对象

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