Oracle调整IO
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
– 从原表中删除迁移和链接行:
DELETE FROM order_hist WHERE ROWID IN (SELECT head_rowid FROM chained_rows WHERE table_name = 'ORDER_HIST');
减少迁移和链接行
– 将中间表中的行插入到原表中:
INSERT INTO order_hist SELECT * FROM int_order_hist;
– 删除中间表:
DROP TABLE int_order_history;
– 删除第一步收集的信息:
DELETE FROM chained_rows WHERE table_name = 'ORDER_HIST';
– 重新使用ANALYZE 命令查询输出表 – 在输出表中出现的行都是链接行
– 清除链接行只能通过增加数据块大小来实现
•
使用 RAID
• 三个概念: 三个概念:
条带化:I/O请求多磁驱均匀分布,速度 请求多磁驱均匀分布, 条带化: 请求多磁驱均匀分布 镜像:同时写入多卷, 镜像:同时写入多卷,保护 等同:计算条带化卷的等同, 等同:计算条带化卷的等同,提供校验
• 常用 常用RAID 类型
RAID0:条带化 : RAID1:镜像 顺序访问, : 顺序访问,且磁头停留在最近一次写入 位置。 位置。联机和归档日志常用 RAID1+0:先条带化,再镜像 :先条带化, 适于写密集 RAID3:条带化和等同冗余,等同独立存贮。适于大量顺序 :条带化和等同冗余,等同独立存贮。 I/O,读密集 , RAID5:条带化和等同冗余,等同和数据一起存贮。适于读 :条带化和等同冗余,等同和数据一起存贮。 密集
ROWS;
减少迁移和链接行
– 查询输出表:
SELECT * FROM chained_rows WHERE table_name = 'ORDER_HIST';
– 如果有许多迁移和链接行,就需要消除迁移行
– 创建与原表相同列的中间表,以保存迁移和链接行
CREATE TABLE int_order_hist AS SELECT * FROM order_hist WHERE ROWID IN (SELECT head_rowid FROM chained_rows WHERE table_name = 'ORDER_HIST');
• • • •
将数据文件和Redo Log文件分开 将数据文件和 文件分开 Striping表数据 表数据 分开表和索引 减少与ORACLE无关的磁盘 无关的磁盘I/O 减少与 无关的磁盘
减少迁移和链接行
– utlchain.sql – 使用ANALYZE收集迁移和链接行的st LIST CHAINED
使用裸设备
• • • • •
裸设备,没有经过格式化,不被Unix通过文件系统来读 裸设备,没有经过格式化,不被 通过文件系统来读 取的特殊字符设备。 取的特殊字符设备。 数据直接从Disk到Oracle进行传输 ,避免 和FS开销 到 数据直接从 进行传输 避免OS和 开销 量大时可大大提高性能, ,I/O量大时可大大提高性能,高至 量大时可大大提高性能 高至40% 不要把整个裸设备设为数据文件,至少要空出两个 不要把整个裸设备设为数据文件, ORACLE块大小 块大小 CREATE TABLESPACE RAW_TS DATAFILE '/dev/raw1' size 30712k DATAFILE '/dev/raw2' size 30712k; 备份时只能用dd,例如 例如: 备份时只能用 例如 #dd if=/dev/raw1 of=/dev/rmt0 bs=16k
调整I/O
日月明王 msn:wangwm1997@
检查I/O问题 检查 问题
• •
检查系统的I/O问题 检查系统的 问题 检查ORACLE的I/O问题 的 问题 检查 – 包含I/O统计信息的动态性能表 – 反映ORACLE文件I/O的进程
使用分布I/O减少磁盘竞争 使用分布 减少磁盘竞争