漫谈数据库查询速度优化方案
来源:互联网 发布:mac 六维空间 编辑:程序博客网 时间:2024/06/05 16:39
摘要
从事前端开发的都知道,页面显示的数据一定要及时的呈现,否则会影响用户体现.那么导致页面加载数据慢或者显示滞后的原因又是什么呢?
拿自己之前做项目经历给大家讲讲吧,之前做后台,当时的项目实时性都非常高,前端页面实时显示要求非常高 ,慢1秒显示都会导致用户的投诉,最后没办法,通过本地(磁盘)缓存跟数据表分割来解决这一问题.
原因分析
主要原因1:后台数据库中的数据过多,没做数据优化导致后台查询数据很慢
次要原因2:前端数据请求-解析-展示过程处理不当
次要原因3:网络问题所致
那么我们应该怎么做后台数据优化呢?
解决问题
这里总结了几种方案,如何提高数据库查询的速度,大家参考.
1、缓存,在持久层或持久层之上做缓存;
使用ehcache缓存,这个一般用于持久层的缓存,提供持久层、业务层的快速缓存,hibenate默认使用的二级缓存就是ehcache
2、数据库表的大字段剥离
假如一个表的字段数有100多个,学会拆分字段,保证单条记录的数据量很小
3、恰当地使用索引;
必要时建立多级索引,分析MySQL的执行计划,通过表数据统计等方式协助数据库走正确的查询方式,该走索引就走索引,该走全表扫描就走全表扫描;
4、表的拆分
表分区和拆分,无论是业务逻辑上的拆分(如一个月一张报表、分库)还是无业务含义的分区(如根据ID取模分区);
5、字段冗余
减少跨库查询和大表连接操作;,数据通过单个或多个JOB生成出来,减少实时查询;
6、从磁盘上做文章
数据存放的在磁盘的内、外磁道上,数据获取的效率都是不一样的;
7、放弃关系数据库的某些特性
引入NoSQL数据库;
换种思路存放数据,例如搜索中的倒排表;
3 1
- 漫谈数据库查询速度优化方案
- 数据库查询优化方案
- 数据库查询优化方案
- 数据库查询优化方案
- [数据库]数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- 数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- 数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- 数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- 数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- 数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- 数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- Oracle数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- 数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- 数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- 数据库查询优化方案(处理上百万级记录如何提高处理查询速度)
- SQLite数据库查询优化方案
- 数据库查询速度优化 1 建立索引
- 数据库的索引大幅度优化查询速度
- 南阳oj 168 房间安排
- hdu5475 An easy problem(线段树)
- java中文乱码解决之道(二)-----字符编码详解:基础知识 + ASCII + GB**
- 友录项目总结笔记
- Touch 事件的分发和消费机制
- 漫谈数据库查询速度优化方案
- [Android] Java中进制的总结
- java中文乱码解决之道(三)-----编码详情:伟大的创想---Unicode编码
- 【机房收费系统】总结
- C# .NET使用SerialPort类实现接受信号和发送信号
- FZU Problem 2222 ABCDEFG(水题)——FOJ有奖月赛-2016年4月(校赛热身赛)
- MFC下页面切换
- AS COUNT,Having ,DISTINCT,ALL 在数据库中的使用
- [OpenGL] OpenGL+VS2015环境配置