Use ASM to deploy large databases (10TB to PB Range)
References:
Deployment of very large databases (10TB to PB Range) with Automatic Storage Management (ASM) (Doc ID 368055.1)
Range:
This article applies to ASM configurations on all platforms. Contains the use of RAC and single-instance environments.
This article applies to the creation of super-large databases. And the database will grow to more than 10TB levels.
Challenge:
ASM Meta-data storage
How to resolve:
The AU (allocation unit) is the primary allocation unit in the ASM Disk group. By default. ASM au size is set to 1MB
ASM data extents a bare device that stores the contents of ASM file.
In Oracle database 10g, each data extent is a separate AU (allocation unit)
Because of this extent and AU's 1-to-1 mapping (map) relationship. In a super-large database. An ASM file extent map can grow to GB. In this case. Memory usage and the performance of open files are inefficient and inefficient.
ASM provides 2 implicit parameters that allow you to create an ASM disk group with an AU size of 16MB and fine grain striping size 1MB (previously 128KB)
This lowers the extent map size to the original 1/16. The AU parameter can only be used when the disk group is set up. When a disk group is established, you cannot change the size of the AU for this disk group
In order to change the AU size (that is, the data extent size), you must reset the following ASM implicit parameters: Change from 1MB to 16mb,fine grain stripe size to 1MB
The ASM instance must be closed. _asm_ausize and _asm_stripesize must be reset (reset) in the Init.ora parameter file of the ASM instance, and then the ASM instance is restarted to inherit the new value of the parameter.
o _asm_ausize=16777216
o _asm_stripesize=1048576
---> Note: The above value is in the unit byte
You must change the ASM file template. Set the stripe type to ' FINE ' for all file types to use the 1MB striping.
This must be done after the ASM Diskgoup is created.
In order for these two parameters to take effect, the ASM instance must be restarted.
When this two implied parameter is set and the ASM instance is restarted, no matter what ASM Disk group is created, the new AU size and fine stripe size will be used
In order to create an ASM disk group. Use normal 1MB au size and 128K FINE stripe size. These two implied parameters should be removed and ASM needs to be restarted.
Examples:
The following example creates an ASM disk group with an AU size (that is, data extents size) of 16MB, and for all datafile, FINE striping size is 1MB
1. Turn off ASM instances
2. Include the following parameters in the ASM Init.ora file, for example:
_asm_ausize=16777216
_asm_stripesize=1048576
3. Restart the ASM instance.
4. Create a disk group:
CREATE diskgroup diskgroup_name disk '/devices/diska1 ', '/devices/diska2 ';
5. Change the all ASM file template to FINE grained:
o alter diskgroup diskgroup_name alter TEMPLATE <tmpl> ATTRIBUTES (FINE);
o Repeat this command for all ASM file types. Attributes types is listed
Below
o Controlfile, datafile, Onlinelog, ARCHIVELOG, Tempfile, BACKUPSET,
Parameterfile, Dataguardconfig, FLASHBACK, changetracking, Dumpset,
Xtransport, Autobackup
16MB ausize and 1MB fine grain striping can effectively provide 1MB data striping. At the same time. Reduces the overload of the ASM file extent.
This configuration can be faster when opening ASM file, and more effectively supports the ASM database in the 10TB to PB range.
Attention:
Apply The fix for Bug 5100163 in 10.2.0.4
This patch should is applied if you had created ASM diskgroups with the AU size greater than 1MB and had fewer than 3585 User files.
The following command must be-ran on each of the diskgroup after applying the patch:
ALTER diskgroup <DG_NAME> CHECK all REPAIR
"Translated from MOS article" using ASM to deploy a large database (10TB to PB Range)--for Oracle 10G