数据库选择合适大小的块非常重要,特别是大型数据库和超大型数据库更为重要。数据块大小会影响整个数据库的读写性能。Oracle数据块大小默认为8Kb,虽然8Kb大小的块可以满足大部分OLTP(联机事务处理过程)的信用程序,但是对于DSS系统(决策支持系统 Decision Support System)而言,则需要更大的块。如果数据库已经使用了8Kb的默认块DBA可以用Oracle Multiple Block Size特性。在某种情况下,当大型数据库和超大型数据库系统使用16Kb和32Kb的数据块时,数据库的性能会好于4Kb或者8Kb的数据块。数据块的大小由参数db_block_size控制。
在同一个数据库实例内可以使用不同大小的数据块。但除非应用有特殊否则不建议如此使用。大型数据库可以用16KB或者32KB大小的块,但需要DBA来决定使用哪种大小的块能给应用程序提供更好的性能。一旦使用默认大小的块创建了数据库,那么默认块大小就不能修改,除非重建数据库。
下面来说一说根据应用程序需要选择正确的数据块大小的几条建议(仅供参考,欢迎探讨):
当表中记录较少且数据随机访问为主,使用小块效率更高。
当表中记录较少,但是数据以顺序读和随机+顺序读混合时,使用大块可以提升读的性能。
当表中记录数较多,如数据存放在LOB列中,使用大块可以显著地提升读的性能。
在高并发系统中如果使用了大块,要确保设置合适的initerans和maxtrans参数。
使用大块可以减少管理块的资源开销,并且单个大块可以存储更多的记录。
使用大块的情况下,单次读可以把更多的记录加载到buffer cache中,提升运行效率。
以上观点仅供参考。
文章转载自DB SQL 学习号,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
Oracle RAC ASM 磁盘组满了,无法扩容怎么在线处理?
Lucifer三思而后行
959次阅读
2025-03-17 11:33:53
Oracle DataGuard高可用性解决方案详解
孙莹
409次阅读
2025-03-26 23:27:33
墨天轮个人数说知识点合集
JiekeXu
353次阅读
2025-04-01 15:56:03
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
343次阅读
2025-04-08 09:12:48
Oracle SQL 执行计划分析与优化指南
Digital Observer
309次阅读
2025-04-01 11:08:44
风口浪尖!诚通证券扩容采购Oracle 793万...
Roger的数据库专栏
287次阅读
2025-03-24 09:42:53
Oracle 19c RAC更换IP实战,运维必看!
szrsu
286次阅读
2025-04-08 23:57:08
切换Oracle归档路径后,不能正常删除原归档路径上的归档文件
dbaking
281次阅读
2025-03-19 14:41:51
oracle定时任务常用攻略
virvle
280次阅读
2025-03-25 16:05:19
MySQL 有没有类似 Oracle 的索引监控功能?
JiekeXu
257次阅读
2025-03-19 23:43:22