Automatic Storage Management

Automatic Storage Management (ASM) is a feature provided by Oracle Corporation within the Oracle Database from release Oracle 10g (revision 1) onwards. ASM aims to simplify the management of database datafiles, control files and log files. To do so, it provides tools to manage file systems and volumes directly inside the database, allowing database administrators (DBAs) to control volumes and disks with familiar SQL statements in standard Oracle environments. Thus DBAs do not need extra skills in specific file systems or volume managers (which usually operate at the level of the operating system).
Features
IO channels can take advantage of data striping and software mirroring
DBAs can automate online redistribution of data, along with the addition and removal of disks/storage
the system maintains redundant copies and provides 3rd-party RAID functionality
Oracle supports third-party multipathing IO technologies (such as failover or load balancing to SAN access)
the need for hot spares diminish
Architecture overview
ASM creates extents out of datafiles, log-files, system files, control files and other database structures. The system then spreads these extents across all disks in a "diskgroup". One can think of a diskgroup in ASM as a Logical Volume Manager volume group — with an ASM file corresponding to a logical volume. In addition to the existing Oracle background processes, ASM introduces two new ones - OSMB and RBAL. OSMB opens and creates disks in a diskgroup. RBAL provides the functionality of moving data between disks in a diskgroup.
Implementation and usage
Automatic Storage Management (ASM) simplifies administration of Oracle-related files by allowing the administrator to reference disk groups (rather than individual disks and files) which ASM manages. ASM extends the Oracle Managed Files (OMF) functionality
that also includes striping and mirroring to provide balanced and secure storage. DBAs can use the ASM functionality in combination with existing raw and cooked file-systems, along with OMF and manually managed files.
An ASM instance controls the ASM functionality. It isn't a full database instance, it provides just the memory structures, and as such is very small and lightweight.
The main components of ASM are disk groups, each of which comprise several physical disks controlled as a single unit. The physical disks are known as ASM disks, while the files that reside on the disks are known as ASM files. The locations and names for the files are controlled by ASM, but user-friendly aliases and directory structures can be defined by the DBA for ease of reference.
The level of redundancy and the granularity of the striping can be controlled using templates. Oracle Corporation provides default templates for each file-type stored by ASM, but additional templates can be defined as needed.
Failure groups are defined within a disk group to support the required level of redundancy. For two-way mirroring, a disk group might contain two failure groups, in which case individual files are written to two locations.
Oracle ASM Dynamic Volume Manager provides the foundation for the ASM Cluster File System (ACFS).
In summary, ASM provides the following functionality:
manages groups of disks, called disk groups
manages disk redundancy within each disk group
provides near-optimal I/O balancing without any manual tuning
enables management of database objects without specifying mount-points or filenames
supports large files
Redundancy
One can configure ASM diskgroups to have no redundancy (external), two-way mirroring (normal), or three-way mirroring (high). In the case of normal and high mirrors, good practice suggests having fail groups that talk to different controllers for performance and fail-safe reasons.
In the case of external redundancy, ASM does not do any software mirroring, but only stripes its files across all the disks that belong to the disk group that does external redundancy.
In the case of normal redundancy, ASM does two-way mirroring, meaning that ASM maintains two copies of the data through software mirroring. When querying for mirror information, DBAs will see two mirrors in this case.
In the case of high redundancy, ASM does three-way mirroring, maintaining three copies of the data through software mirroring. When querying for mirror information, DBAs will see three mirrors in this case.
See also
Logical volume management
References
External links
http://twiki.cern.ch/twiki/pub/PSSGroup/Presentations2007/Inside_Oracle_ASM_LC_CERN_UKOUG07.ppt
ASMCMD: useful for users not familiar with SQL (one can write scripts with it)
Proprietary database management systems
Oracle software