您的位置:首页 > 数据库

影响数据库性能的常见因素

2015-03-22 18:39 417 查看

1、影响数据库性能的常见因素:

-> 读写竞争

-> 事务竞争

-> 频繁的事务处理

2、数据库需要保证数据的准确与安全,提出来事务(transactio)的概念

->严格的定义:满足原子性、一致性、持久性和隔离性的操作成为事务。

->隔离性会影响到数据的性能

如:需要读取id=100的数据的同时要修改id为90-100的数据,就会有隔离性限制

->由上面的例子提出隔离级别的概念

未提交读:读取到刚刚修改的数据,但是数据库还没有同步该数据(脏读),原理看Mysql的架构图,没同步时还在内存中
已提交读:等待
可重复读:等待
序列化读:等待

->等待机制就是锁,主要的有共享锁和排他锁

->因为多事务交叉,可能出现死锁:

记录一:

先读取结果

根据结果修改值

记录二:

修改某一些值

查询最后的结果

如果线程A锁住了记录1并等待记录2,而线程B锁住了记录2并等待记录1,这样两个线程就发生了死锁现象。此时执行程序中两个或多个线程发生永久堵塞(等待),每个线程都在等待被其他线程占用并堵塞了的资源。

3、数据库应用的分类:

联机事务处理(OLTP):增删改

联机事务分析(OLAP):查
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: