Tuesday 11 November 2014

Automatic Storage Management (ASM) - Architecture

Automatic Storage Management (ASM) - Architecture

Automatic Storage Management

ASM has three important components

  •  The ASM instance
  •  Disk Group
  •  ASM Files


In l0g, there are two types of Instances


  •   Database Instance
  •   ASM Instance


The ASM instance which is generally named +ASM, is started with the instance_type=ASM in ‘init.ora’ parameter. This parameter, when set, signals the Oracle initialization routine to start an ASM instance and not a standard database instance. Unlike the standard database instance, the ASM contains no physical files; such as log files, Control files or datafiles, and only requires a few ‘init.ora’ parameters for startup.

An ASM Instance takes up about 100MB of space. Most ASM instances should need no more than 164MB of SGA.

Initialization parameters for the ASM Instance


If only one parameter is set i.e.  instance_type=ASM, Oracle will startup the ASM instance with the default values for all other parameters.

Key initialization Parameters


Instance_type=ASM (we must set this parameter as ASM)

ASM_diskgroups     this parameter allows name specification of any disk group that the ASM instance should automatically mount at the instance startup.
ASM_Diskstring this parameter sets the disk location for the oracle to consider during a disk-discovery process.
 ASM_DISKSRTING= ‘/dev/hdsk/raw’

ASM Instance Architecture


An ASM instance has several background processes; in addition, there are TWO new Background processes:

ASM Rebalance Master (RBAL)  the rebalance process is in-charge of coordinating disk activity.

ASM Rebalance (ARBn)  the ARBn process performs the actual re-balancing work like moving the data extents around at the database side which uses ASM.

Instance will have TWO new ASM related background processes – RBAL and ASM background process.
  • The RBAL process performs global open of the disk in the ASM disk group
  • The ASMB background process connects as foreground process into the ASM instance. The ASMB process acts as the link between the ASM instance and the database instance communicating information like creation, deletion, updating statistics and performing instance health checks.

ASM Disk groups


A disk group, which is the highest level data structure in ASM, is comparable to a LVM’s volume group or a storage group.

Disks 

The first task in building the ASM infrastructure is to discover and associate (adding) disk under ASM Management. A disk can be partition of a physical spindle or refer to the entire spindle itself.

Failure Group

A failure group which is a subset of a diskgroup by definition is a collection of the disks that can become unavailable due to the failure of one or all associated components.

ASM uses a unique mirroring Algorithm. ASM does not mirror disks, rather it mirrors extents.

Redundancy for disk groups can be either normal redundancy where files are two-way mirrored (require at least TWO failure groups).

High Redundancy: which provides a higher degree of protection using THREE way mirroring (requiring at least THREE failure groups).


Cluster Synchronization Services (CSS)


CSS maintains synchronization between the ASM and Database Instance.

Benefits

1)      I/O is spread evenly across all available disk drives to prevent hot spots and maximize performance.
2)      Performs automatic online redistribution after the incremental addition or removal of storage capacity.
3)      Maintain redundant copies of data to provide fault tolerance.
4)      ASM is free of cost since it is a part of the Oracle Database 10g software.

Views 

v$asm_diskgroup
v$asm__client
v$asm_disk
v$asm_file
v$asm_template
v$asm_alias
v$asm_operation


Scalability

ASM imposes the following limits:

1)      63 diskgroups in a storage system
2)      10,000 ASM disk in a storage system
3)      4-Petabyte of maximum storage for each ASM disk
4)      40-exabyte maximum storage for each storage system
5)      1 million files for each disk group
6)      Maximum file size(s) as shown in the following table:


Disk
Group Type
Maximum File Size



External
redundancy
35 TB
Normal
redundancy
5.8 TB
High
redundancy
3.9 TB


SYNTAX


External Redundancy

> Create diskgroup DG101 external redundancy disk
'/dev/hdsk/hdk2345', '/dev/rdsk/ hdk2346';

Normal Redundancy


Create diskgroup with NORMAL redundancy

failgroup cont_1 disk '/dev/hdsk/hdk2345', '/dev/rdsk/ hdk2346'
failgroup cont_2 disk '/dev/hdsk/hdk3345', '/dev/rdsk/ hdk3346'


High Redundancy

Create diskgroup with HIGH redundancy

failgroup cont_1 disk '/dev/hdsk/hdk2345', '/dev/rdsk/ hdk2346'
failgroup cont_2 disk '/dev/hdsk/hdk3345', '/dev/rdsk/ hdk3346'
failgroup cont_3 disk '/dev/hdsk/hdk4345', '/dev/rdsk/ hdk4346'


To add/drop a new disk to diskgroup


> alter diskgroup costs add disk1;
''/dev/rdsk/ hdk4347 name disk1;'

> alter diskgroup costs drop disk disk1;

No comments:

Post a Comment