- 浏览: 786329 次
- 性别:
- 来自: 广州
文章分类
最新评论
I/O 从属进程
I/O从属进程用于为不支持异步I/O的系统或设备模拟异步I/O.例如,磁带设备(相当慢)就不支持异步I/O.通过使用I/O 从属进程,可以让磁带机模仿通常只为磁盘驱动器提供的功能。就好像支持真正的异步I/O 一样,写设备的进程(调用者)会收集大量数据,并交由写入器写出。数据成功地写出时,写入器(此时写入器是I/O 从属进程,而不是操作系统)会通知原来的调用者,调用者则会从要写的数据列表中删除这批数据。
采用这种方式,可以得到更高的吞吐量,这是因为会由I/O 从属进程来等待慢速的设备,而原来的调用进程得以脱身,可以做其他重要的工作来收集下一次要写的数据。
I/O 从属进程在Oracle 中有两个用途。DBWn 和LGWR 可以利用I/O 从属进程来模拟异步I/O,另外RMAN写磁带时也可能利用I/O 从属进程。
有两个参数控制着I/O 从属进程的使用:
BACKUP_TAPE_IO_SLAVES:这个参数指定RMAN 是否使用I/O 从属进程将数据备份、复制或恢复到磁带上。由于这个参数是围绕着磁带设备设计的,而且磁带设备一次只能由一个进程访问,所以这个参数是一个布尔值,而不是所用从属进程的个数(这可能出乎你的意料)。RMAN 会为所用的物理设备启动多个必要的从属进程。BACKUP_TAPE_IO_SLAVES = TRUE 时,则使用一个I/O 从属进程从磁带设备读写。如果这个参数为FALSE(默认值),就不会使用I/O从属进程完成备份。相反,完成备份的专用服务器进程会直接访问磁带设备。
DBWR_IO_SLAVES:这个参数指定了DBW0 进程所用I/O 从属进程的个数。DBW0 进程及其从属进程总是将缓冲区缓存中的脏块写至磁盘。这个值默认为0,表示不使用I/O 从属进程。注意,如果将这个参数设置为一个非0 的值,LGWR 和ARCH 也会使用其自己的I/O 从属进程,LGWR 和ARCH 最多允许4 个I/O 从属进程。
DBWR I/O 从属进程的名字是I1nn,LGWRI/O 从属进程的名字是I2nn,这里nn 是一个数。
并行查询从属进程
Oracle7.1.6 引入了并行查询功能。这个功能是指:对于SELECT、CREATE TABLE、CREATE INDEX、UPDATE 等SQL 语句,创建一个执行计划,其中包含可以同时完成的多个(子)执行计划。将每个执行计划的输出合并在一起构成一个更大的结果。其目标是仅用少量的时间来完成操作,这只是串行完成同一操作所需时间的一小部分。
例如,假设有一个相当大的表,分布在10 个不同的文件上。你配置有16 个CPU,并且需要在这个表上执行一个即席查询。另一种方法是:可以将这个查询计划分解为32 个小部分,并充分地利用机器;而不是只使用一个进程串行地读取和处理所有数据。相比之下,前一种做法要好得多。
使用并行查询时,会看到名为Pnnn 的进程,这些就是并行查询从属进程。处理一条并行语句时,服务器进程则称为并行查询协调器(parallelquery coordinator)。操作系统上服务器进程的名字并不会改变,但是阅读有关并行查询的文档时,如果提到了协调器进程,你应该知道这就是原来的服务器进程
I/O从属进程用于为不支持异步I/O的系统或设备模拟异步I/O.例如,磁带设备(相当慢)就不支持异步I/O.通过使用I/O 从属进程,可以让磁带机模仿通常只为磁盘驱动器提供的功能。就好像支持真正的异步I/O 一样,写设备的进程(调用者)会收集大量数据,并交由写入器写出。数据成功地写出时,写入器(此时写入器是I/O 从属进程,而不是操作系统)会通知原来的调用者,调用者则会从要写的数据列表中删除这批数据。
采用这种方式,可以得到更高的吞吐量,这是因为会由I/O 从属进程来等待慢速的设备,而原来的调用进程得以脱身,可以做其他重要的工作来收集下一次要写的数据。
I/O 从属进程在Oracle 中有两个用途。DBWn 和LGWR 可以利用I/O 从属进程来模拟异步I/O,另外RMAN写磁带时也可能利用I/O 从属进程。
有两个参数控制着I/O 从属进程的使用:
BACKUP_TAPE_IO_SLAVES:这个参数指定RMAN 是否使用I/O 从属进程将数据备份、复制或恢复到磁带上。由于这个参数是围绕着磁带设备设计的,而且磁带设备一次只能由一个进程访问,所以这个参数是一个布尔值,而不是所用从属进程的个数(这可能出乎你的意料)。RMAN 会为所用的物理设备启动多个必要的从属进程。BACKUP_TAPE_IO_SLAVES = TRUE 时,则使用一个I/O 从属进程从磁带设备读写。如果这个参数为FALSE(默认值),就不会使用I/O从属进程完成备份。相反,完成备份的专用服务器进程会直接访问磁带设备。
DBWR_IO_SLAVES:这个参数指定了DBW0 进程所用I/O 从属进程的个数。DBW0 进程及其从属进程总是将缓冲区缓存中的脏块写至磁盘。这个值默认为0,表示不使用I/O 从属进程。注意,如果将这个参数设置为一个非0 的值,LGWR 和ARCH 也会使用其自己的I/O 从属进程,LGWR 和ARCH 最多允许4 个I/O 从属进程。
DBWR I/O 从属进程的名字是I1nn,LGWRI/O 从属进程的名字是I2nn,这里nn 是一个数。
并行查询从属进程
Oracle7.1.6 引入了并行查询功能。这个功能是指:对于SELECT、CREATE TABLE、CREATE INDEX、UPDATE 等SQL 语句,创建一个执行计划,其中包含可以同时完成的多个(子)执行计划。将每个执行计划的输出合并在一起构成一个更大的结果。其目标是仅用少量的时间来完成操作,这只是串行完成同一操作所需时间的一小部分。
例如,假设有一个相当大的表,分布在10 个不同的文件上。你配置有16 个CPU,并且需要在这个表上执行一个即席查询。另一种方法是:可以将这个查询计划分解为32 个小部分,并充分地利用机器;而不是只使用一个进程串行地读取和处理所有数据。相比之下,前一种做法要好得多。
使用并行查询时,会看到名为Pnnn 的进程,这些就是并行查询从属进程。处理一条并行语句时,服务器进程则称为并行查询协调器(parallelquery coordinator)。操作系统上服务器进程的名字并不会改变,但是阅读有关并行查询的文档时,如果提到了协调器进程,你应该知道这就是原来的服务器进程
发表评论
-
Oracle 10g 的clusterware 32位 下载地址
2013-04-19 23:03 1215Oracle 10g 的clusterware 32位 下载地 ... -
oracle 分析函数 RANK()
2013-04-11 00:05 1101RANK()既是一个聚合函数,也是一个分析函数 其具体的语法 ... -
oracle 分析函数
2013-04-09 23:25 1176分析函数是用于计算一组中多行的聚合值,与聚合函数的区别在于聚合 ... -
批量执行 bulk collect与forall用法
2013-04-08 23:49 1395BULK COLLECT 子句会批量检 ... -
pl/sql集合类型
2013-03-26 10:12 1576--集合类型 /* 单行单列的数据,使用标量变量 单行 ... -
oracle 行链接与行迁移
2013-03-16 01:06 1105表里的一行对于一个数据块太大的情况有二种(一行在一个数据块里放 ... -
oracle Health Monitor
2013-01-20 00:02 1614About Health Monitor Beginning ... -
oracle moving window size与 AWR retention period关系
2013-01-19 15:58 8488转自: http://tomszrp.itpub.net/po ... -
Oracle11.2新特性之INSERT提示IGNORE_ROW_ON_DUPKEY_INDEX
2013-01-12 00:20 2916insert提示IGNORE_ROW_ON_DUPKEY_IN ... -
oracle 11g新特性Flashback data archive
2013-01-09 22:52 30871. 什么是flashback data archive F ... -
RMAN List和report 命令
2012-12-25 00:07 2900LIST 命令 使用RMAN LIST 命令显示有关资料档案库 ... -
oracle ASM中ASM_POWER_LIMIT参数
2012-12-24 23:46 6432ASM_POWER_LIMIT 该初始化参数用于指定ASM例程 ... -
easy connect 之 ORA-12154: TNS: 无法解析指定的连接标识符
2012-12-19 23:43 5641用easy connect连接出现“tns无法解析指定的连接标 ... -
Flashback Database --闪回数据库
2012-12-19 23:38 1393Flashback 技术是以Undo segment中的内容为 ... -
Oracle 11g新特性:Automatic Diagnostic Repository
2012-12-19 22:35 1395Oracle Database 11g的FDI(Fault D ... -
RMAN配置中通道(CHANNEL)相关参数 PARALLELISM 、FILESPERSET的关系
2012-12-19 22:09 2700RMAN配置中通道(CHANNEL)相 ... -
oracle 空间RESUMABLE
2012-12-14 22:05 3062空间RESUMABLE操作 转 Oracle从9i开始 ... -
oracle 创建视图 with check option
2012-12-13 23:14 1532我们来看下面的例子: create or replace vi ... -
flashback transaction闪回事务查询
2012-11-26 22:00 1505闪回事务查询有别于闪回查询的特点有以下3个: (1) ... -
pl/sql连不上oracle数据库
2012-11-21 22:56 3752pl/sql 9.2版本连不上oracle数据库 当系统安装 ...
相关推荐
利用I/O从属进程专门处理I/O任务,以提高处理效率。 3. **CPU使用调整**:由于Oracle的所有进程在同一优先级上运行,调整进程优先级有助于平衡CPU资源竞争,减少延迟,提高并发处理能力。 此外,监控是性能调优的...
3. **backup_tape_io_slaves**:用于RMAN(恢复管理器)备份,决定是否使用服务器进程或I/O从属进行磁带读写。 4. **db_block_buffers**:决定了数据库块缓存的大小,直接影响I/O性能。更大的值可以提高缓存命中率...
9. **background_tape_io_slaves**: 一个 RMAN 参数,用于决定读写磁带时是否使用服务器进程或额外的 I/O 从属进程。默认值为 FALSE,即不使用额外的 I/O 从属。 10. **bitmat_merge_area_size**: 与排序、散列联接...
影响RMAN(Recovery Manager)的磁带I/O操作,决定是否使用额外的I/O从属进程。TRUE表示使用,FALSE则不使用。 10. **bitmat_merge_area_size**: 用于位图合并操作的内存大小,与索引扫描和内存管理相关。默认值...
- **Large Pool**:大型池是Oracle SGA的一部分,主要用于各种高级功能,如RMAN备份和恢复操作、I/O从属进程等,因此它是最适合这些操作的内存区域。 #### 问题3:创建名为SALES_DATA的表空间 **问题描述**:执行...
其中,服务器进程负责处理用户请求,后台进程负责执行数据库级别的任务,而从属进程则支持并行操作和I/O处理。通过理解不同类型的进程及其作用,读者可以更有效地监控和优化数据库性能。 ### 第6章:锁 锁是数据库...
5. **backup_tape_io_slaves**:此参数用于RMAN备份,决定是否使用服务器进程或I/O从属进程进行磁带读写。 6. **bitmap_merge_area_size** 和 **create_bitmap_area_size**:这些参数与索引的位图操作相关,分别...
- **I/O从属进程与并行查询从属进程**:I/O从属进程负责处理I/O请求,而并行查询从属进程则用于加速并行查询的执行。 #### 三、总结 通过以上对《Oracle 9i&10g编程艺术:深入数据库体系结构》一书的解析,可以...
5. **backup_tape_io_slaves**:用于RMAN备份恢复,控制是否使用服务器进程或I/O从属来读写磁带。 6. **bitmap_merge_area_size**:优化参数,用于合并位图索引扫描结果时分配的内存。 7. **buffer_pool_keep** 和...