http://docs.oracle.com/cd/E11882_01/server.112/e18951/asmcon.htm#i1021951
--------------------------------------------------------------------
转发下面4点详细介绍,理解一下与ASM文件相关的几个重要概念。
+ allocation units AU
+ extents 分区
+ striping 条带,包含striping chunk条带块
+ file template 模板
--------------------------------------------------------------------
原文如下
Allocation Units
Every Oracle ASM disk is divided into allocation units (AU). An allocation unit is the fundamental unit of allocation within a disk group. A file extent consists of one or more allocation units. An Oracle ASM file consists of one or more file extents.
When you create a disk group, you can set the Oracle ASM allocation unit size with theAU_SIZE
disk group attribute. The values can be 1, 2, 4, 8, 16, 32, or 64 MB, depending on the specific disk group compatibility level. Larger AU sizes typically provide performance advantages for data warehouse applications that use large sequential reads.
For information about specifying the allocation unit size for a disk group, see"Specifying the Allocation Unit Size". For information about disk group compatibility attributes, see"Disk Group Compatibility".
About Oracle ASM Files
Files that are stored in Oracle ASM disk groups are called Oracle ASM files. Each Oracle ASM file is contained within a single Oracle ASM disk group. Oracle Database communicates with Oracle ASM in terms of files. This is similar to the way Oracle Database uses files on any file system. You can store the various file types in Oracle ASM disk groups, including:
-
Control files
-
Data files, temporary data files, and data file copies
-
SPFILEs
-
Online redo logs, archive logs, and Flashback logs
-
RMAN backups
-
Disaster recovery configurations
-
Change tracking bitmaps
-
Data Pump dumpsets
Oracle ASM automatically generates Oracle ASM file names as part of file creation and tablespace creation. Oracle ASM file names begin with a plus sign (+
) followed by a disk group name. You can specify user-friendly aliases for Oracle ASM files and create a hierarchical directory structure for the aliases.
The following sections describe the Oracle ASM file components:
Extents
The contents of Oracle ASM files are stored in a disk group as a set, or collection, ofextents that are stored on individual disks within disk groups. Each extent resides on an individual disk. Extents consist of one or more allocation units (AU). To accommodate increasingly larger files, Oracle ASM uses variable size extents.
Variable size extents enable support for larger Oracle ASM data files, reduce SGA memory requirements for very large databases, and improve performance for file create and open operations. The initial extent size equals the disk group allocation unit size and it increases by a factor of 4 or 16 at predefined thresholds. This feature is automatic for newly created and resized data files when specific disk group compatibility attributes are set to 11.1 or higher. For information about compatibility attributes, see "Disk Group Compatibility".
The extent size of a file varies as follows:
-
Extent size always equals the disk group AU size for the first 20000 extent sets (0 - 19999).
-
Extent size equals 4*AU size for the next 20000 extent sets (20000 - 39999).
-
Extent size equals 16*AU size for the next 20000 and higher extent sets (40000+).
Figure 1-4 shows the Oracle ASM file extent relationship with allocation units. The first eight extents (0 to 7) are distributed on four Oracle ASM disks and are equal to the AU size. After the first 20000 extent sets, the extent size becomes 4*AU for the next 20000 extent sets (20000 - 39999). This is shown as bold rectangles labeled with the extent set numbers 20000 to 20007, and so on. The next increment for an Oracle ASM extent is 16*AU (not shown inFigure 1-4).
Figure 1-4 Oracle ASM File Allocation in a Disk Group
Description of "Figure 1-4 Oracle ASM File Allocation in a Disk Group"
Oracle ASM Striping
Oracle ASM striping has two primary purposes:
-
To balance loads across all of the disks in a disk group
-
To reduce I/O latency
Coarse-grained striping provides load balancing for disk groups while fine-grained striping reduces latency for certain file types by spreading the load more widely.
To stripe data, Oracle ASM separates files into stripes and spreads data evenly across all of the disks in a disk group. The fine-grained stripe size always equals 128 KB in any configuration; this provides lower I/O latency for small I/O operations. The coarse-grained stripe size is always equal to the AU size (not the data extent size).
Figure 1-5 andFigure 1-6 are illustrations of Oracle ASM file striping. In both illustrations, the allocation unit size has been set to 1 M (AU_SIZE
=1M
) for the disk group which consists of 8 disks. The Oracle ASM instance is release 11.2 and the disk group compatibility attributes for ASM and RDBMS have been set to 11.2, so variable extents are shown in the graphic after the first 20,000 extents. For the first 20,000 extents, the extent size is 1 M and equals one allocation unit (AU). For the next 20,000 extents, the extent size is 4 M and equals 4 AUs.
To identify the stripe chunks of the file, they have been labeled A..X (24 letters) using different fonts for successive series of A..X until all the chunks have been identified.
In Figure 1-5, the file is striped in 128 K chunks (labeled A..X) with each 128 K chunk stored in an extent, starting at the first extent in disk 1, then the first extent in disk 2, and then continuing in a round-robin pattern through all the disks until the entire file has been striped. As shown in this example, the striping chunks first fill up the first extent of each disk, then the second extent of each disk, and so on until the entire file has been striped.
Figure 1-5 Oracle ASM Fine-Grained Striping
Description of "Figure 1-5 Oracle ASM Fine-Grained Striping"
In Figure 1-6, the file is striped in 1 M chunks (labeled A..X) with each 1 M chunk stored uniquely in an extent, starting at the first extent in disk 1, then the first extent in disk 2, and then continuing in a round-robin pattern through all the disks until the entire file has been striped. For the first 20,000 extents where the AU equals the extent size (1 M), the stripe equals the extent size and allocation unit size.For the variable extents, where an extent is composed of multiple allocation units, the file stripe is located in an AU of the extent. The striping chunks are placed in the allocation units of the first extents of all the disks before the striping continues to the next extent.
Figure 1-6 Oracle ASM Coarse-Grained Striping
Description of "Figure 1-6 Oracle ASM Coarse-Grained Striping"
File Templates
Templates are collections of attribute values that are used to specify disk regions, file mirroring, andstriping attributes for an Oracle ASM file when it is created. When creating a file, you can include a template name and assign desired attributes based on an individual file rather than the file type.
A default template is provided for every Oracle file type, but you can customize templates to meet unique requirements. Each disk group has a default template associated with each file type.
For more information about Oracle ASM templates, see"Managing Disk Group Templates".