暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

OLTP架构优化笔记

原创 张sir 2020-07-02
951

OLTP系统使用于高并发,高吞吐量,有大量的插入和修改操作(DML)。调优的目的是提高性能,高并发下的高速,经常使用rac集群,因为rac可以得到双倍的内存和CPU,但是会有全局锁的产生。
主机资源需求:CPU需求主频要求不高,I/O要求单次读写能力好,内存要求大一些,PGA占内存的10-30%就可以。

OLTP存储对象:

1、要减少动态分配(文件、块、区)。
2、initrans需要设置足够(一般默认表是1,索引是2),initrans是块中块首部事务表的大小,事务表中可以建立多个条目对应不同的事务又被称为事务槽,每个事务都有一个事务槽记录了事务锁的情况,每个条目大小为23-24,initrans是自动扩展的,在块有足够的空闲空间前提下可以自动扩展到MAXTRANS大小。
3、块不应该设置太小,应该合理设置pctfree大小,pctfree是块中给数据update预留出的空间
4、索引不应设置太多,B-tree比位图索引好,因为索开销会小,考虑一段时间后索引的重建
5、表连接外键上考虑建索引
OLTP应用:
1、减少并发事务量,控制事务的大小
2、减小锁的级别和锁的并发
3、控制触发器的个数(有的甚至不允许创建触发器,因为对资源消耗会比较大,不容易控制)
4、仔细考虑约束创建的利弊
5、SQL的质量要保证,绑定变量的灵活使用,慎重考虑cursor_sharing参数(会强制将所有比对设为绑定变量,对执行计划有影响)
6、

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论