[20171128]rman Input or output Memory Buffers.txt

[20171128]rman Input or output Memory Buffers.txt

--//Input Memory Buffers如何测试,不清楚.不过找到一本电子书.摘要如下:
Oracle RMAN 11g Backup and Recovery.pdf

作者:Robert G. Freeman Matthew Hart
页数:689
出版社:Mc graw hill
出版号: ISBN: 978-0-07-162861-7
        MHID: 0-07-162861-4

RMAN in Memory P80

    RMAN builds buffers in memory through which it streams data blocks for potential backup. This
memory utilization counts against the total size of the PGA and, sometimes, the SGA. There are
two kinds of memory buffers. Input buffers are the buffers that are filled with data blocks read
from files that are being backed up. Output buffers are the buffers that are filled when the
memory-to-memory write occurs to determine whether a particular block needs to be backed up.
When the output buffer is filled, it is written to the backup location. The memory buffers differ
depending on whether you are backing up to or restoring from disk or tape. Figure 2-3 illustrates
input and output buffer allocation. It illustrates a backup of two datafiles being multiplexed into
a single backup set.
        
Input Memory Buffers
    When you are backing up the database, the size and number of input memory buffers depend on
the exact backup command being executed. Primarily, they depend on the number of files being
multiplexed into a single backup. Multiplexing refers to the number of files that will have their
blocks backed up to the same backup piece. To keep the memory allocation within reason, the
following rules are applied to the memory buffer sizes based on the number of files being backed
up together:

■ If the number of files going into the backup set is four or less, then RMAN allocates four
   buffers per file at 1MB per buffer. The total will be 16MB or less.
■ If the number of files going into the backup set is greater than four, but no greater than
   eight, then each file gets four buffers, each of 512KB. This ensures that the total remains
   at 16MB or less.
■ If the number of files being multiplexed is greater than eight, then RMAN allocates four
   buffers of size 128KB. This ensures that each file being backed up will account for 512KB
   of buffer memory.

    Bear in mind that these memory amounts are on a per-channel basis. So, if you allocate two
channels to back up a database with 32 datafiles, for instance, then RMAN will load-balance the
files between the two channels and may not end up with 16 files per channel. If some files are
significantly larger than others, you may end up with only 8 files going into one backup set and
24 files going into the other. If this were the case, then the buffers for the first channel with 8 files
would allocate 16MB of memory for input buffers (four buffers multiplied by 512KB each, multiplied
by 8 files), and the second channel would allocate 12MB of memory buffers (512KB per file
multiplied by 24 files).
    You can use the following query to monitor the size of buffers on a per-file basis while the
backup is running:

SELECT set_count, device_type, type, filename, buffer_size, buffer_count, open_time, close_time
  FROM v$backup_async_io
 ORDER BY set_count, type, open_time, close_time;

--//注意:原来有这个问题!下次备份注意看buffer_size!

Output Buffers When Backing Up to Disk P81
    In addition to input buffers, RMAN allocates output buffers, depending on what the output source
is. If you are backing up to disk, then RMAN allocates output buffers that must fill up with data blocks
from the input buffers before being flushed to the backup piece on your file system. Per channel,
there will be four output buffers, each of which is 1MB. So, the memory footprint per channel will
always be 4MB.

Output Memory Buffers When Backing Up to Tape P81
    Memory allocation is different when backing up to tape, to account for the slower I/O rates
that we expect from tape devices. When you are backing up to or restoring from tape, RMAN
allocates four buffers per channel process, each of which is 256KB, so that the total memory
footprint per channel is 1MB.

--//这也和我前面的测试一样,我使用as copy备份,单个数据文件每个通道4个输出缓存,而每个缓存1M,一个通道是4M.

时间: 2024-10-01 05:25:05

[20171128]rman Input or output Memory Buffers.txt的相关文章

1128rman Input or output Memory Buffers

[20171128]rman Input or output Memory Buffers.txt --//做一个简单测试rman 的Input or output Memory Buffers. 1.环境: SCOTT@book> @ &r/ver1 PORT_STRING                    VERSION        BANNER ------------------------------ -------------- ----------------------

[20171205]rman output Memory Buffers 2

[20171205]关于rman output Memory Buffers 2.txt --//昨天在QQ上与人聊天,再次提到这个问题.感觉在链接http://blog.itpub.net/267265/viewspace-2147866/上的说服力不强. --//我当时仅仅想说明oracle的备份是顺序读取数据文件的. --//另外在链接http://blog.itpub.net/267265/viewspace-2147878/提到: ■ If the number of files be

[20171129]rman input memory buffer 5.txt

[20171129]rman input memory buffer 5.txt --//Input Memory Buffers如何测试,不清楚.不过找到一本电子书.摘要如下: Oracle RMAN 11g Backup and Recovery.pdf 作者:Robert G. Freeman Matthew Hart 页数:689 出版社:Mc graw hill 出版号: ISBN: 978-0-07-162861-7         MHID: 0-07-162861-4 RMAN

[20160721]rman与undo表空间备份.txt

[20160721]rman与undo表空间备份.txt --//UNDO表空间主要用于存储前镜像数据,这些数据在回滚以及恢复过程中可能被用到. --//一般生产数据库的UNDO表空间可能会变得非常巨大,甚至包括多个数据文件,而备份完整的UNDO数据文件在恢复时一般可能用到的比 --//例很小.所以UNDO的很大一部分备份是多余的,在Oracle11g中,Oracle引入了一个新的特性RMAN UNDO备份优化. --//在RMAN备份UNDO表空间时,提交事务的UNDO信息将不再备份,这个特性

java中的Io(input与output)操作总结(一)_java

所谓IO,也就是Input与Output的缩写.在java中,IO涉及的范围比较大,这里主要讨论针对文件内容的读写 其他知识点将放置后续章节(我想,文章太长了,谁都没耐心翻到最后) 对于文件内容的操作主要分为两大类 分别是: 字符流 字节流 其中,字符流有两个抽象类:Writer Reader 其对应子类FileWriter和FileReader可实现文件的读写操作 BufferedWriter和BufferedReader能够提供缓冲区功能,用以提高效率 同样,字节流也有两个抽象类:Input

[20121127]rman备份数据文件大小与truncate.txt

[20121127]rman备份数据文件大小与truncate.txt 记得以前看rman的书,rman仅仅备份已经格式话的块,如果这样一个表被truncate后,即使空间回收了.但是在rman备份时,备份大小不会变画太多,这些前面使用的块一定会备份. 自己做一个测试看看. 1.建立测试环境:SQL> select * from v$version where rownumBANNER--------------------------------------------------------

[20130502]rman的set nocfau表示什么.txt

[20130502]rman的set nocfau表示什么.txt 今天在论坛发贴问rman的set nocfau表示什么?http://www.itpub.net/thread-1784962-1-1.html 按照bluemoon0083表示:估计是隐藏选项,no controlfile autobackup的意思 自己不做测试了,摘录如下: RMAN> configure controlfile autobackup on; new RMAN configuration parameter

C++中格式化输入输出(formatted input and output) 详解

格式化输入输出, 是在<iostream>的头文件中, 控制格式; 如果修改输入输出的格式, 会影响之后的格式, 需要重置, 一般在格式类型之前添加"no", 即可; 支持, 8进制, 16进制, 默认10进制, 以及大写(uppercase)模式; 代码: /* * cppprimer.cpp * * Created on: 2013.11.28 * Author: Caroline */ /*eclipse cdt, gcc 4.8.1*/ #include <i

SQL server中的input和output关键字

问题描述 当什么时候用output,什么时候用input,这样做有何意义? 解决方案 解决方案二:input!~没用过..output是输出参数..可以取到值!~解决方案三:input!~没用过..output是输出参数..解决方案四: 解决方案五:output,做参数还可以返回值解决方案六:当你的存储过程需要返回两个或以上的值的时候,你就会发现Output很有用了.Input我好像没用过解决方案七:input,输入参数,默认的参数就是input的output,输出参数