ORACLE ASM (Automatic Storage Management)
ORACLE ASM (Automatic Storage Management)
Oracle consistently recommends ASM as its preferred storage management solution for both
single-instance Oracle Database and Oracle Real Application Clusters (Oracle RAC)
configurations. This strong endorsement is underpinned by several core advantages:
● Simplified and Automated Storage Management: ASM significantly reduces
administrative overhead. It consolidates data storage into a manageable number of disk
groups and automates routine tasks such as file creation, naming, and deletion. This
automation is a key factor in reducing the manual burden on DBAs.
● Predictable Performance and Scalability: Through its automatic striping, dynamic
rebalancing capabilities, and I/O operations specifically optimized for Oracle workloads,
ASM delivers predictable performance and ensures robust scalability. This inherent
optimization means the storage system is designed to perform optimally with Oracle
databases.
● Enhanced High Availability and Reliability: ASM incorporates built-in mirroring, fast
mirror resynchronization, and deep integration with Oracle's high-availability stack,
including Oracle RAC and Data Guard. These features collectively ensure comprehensive
data protection and continuous operation, even in the event of hardware failures.
● Cost Efficiency: By eliminating the need for third-party volume managers and file
systems, ASM helps reduce software licensing costs and simplifies overall system
architecture. This consolidation also optimizes storage utilization, contributing to a lower
total cost of ownership.
The consistent recommendation of ASM by Oracle reflects a strategic decision to internalize
and optimize storage management specifically for its database workloads. This approach allows
Oracle to maintain control over the entire I/O path, from the database instance down to the
physical disk. This level of integration typically leads to superior performance, availability, and
manageability compared to generic operating system or third-party solutions. The result is a
unified, single-vendor solution for the core database stack, which can significantly reduce
integration complexities and support challenges for customers. This integrated design also
serves as a foundational element for Oracle's engineered systems, such as Exadata, where
tight integration between hardware and software is paramount for achieving extreme
performance and reliability.
Furthermore, while simplification is a readily apparent benefit, the deeper implication is that
ASM is not merely a convenience; it is a fundamental technology that actively enables
advanced Oracle Database features and architectures. Its built-in cluster-awareness and direct
integration with critical components like Oracle RAC , Recovery Manager (RMAN) , and Data
Guard mean that these high-availability and disaster recovery solutions can operate with greater
efficiency and reliability. Without ASM, achieving comparable levels of performance and
resilience in complex Oracle environments would typically demand extensive manual tuning and
the intricate integration of disparate third-party tools. This positions ASM as a prerequisite for
maximizing the value and capabilities of the Oracle Database in demanding enterprise
deployments.
2. Core Concepts and Architecture of Oracle ASM
Oracle ASM operates with a distinct architecture designed for efficient and reliable storage
management of database files.
An Oracle ASM instance shares architectural similarities with an Oracle Database instance,
possessing its own System Global Area (SGA) and background processes. However, due to its
more focused set of responsibilities compared to a full database, the ASM SGA is considerably
smaller, resulting in a minimal performance footprint on the host server.
Role of the ASM Instance: The primary role of ASM instances is to mount disk groups, thereby
making Oracle ASM files accessible to database instances; it is important to note that ASM
instances do not mount databases themselves. They are responsible for managing the
metadata of the disk group, which includes crucial information such as the specific disks
belonging to a disk group, the amount of available space within it, the file names of files stored
in the disk group, their exact extent locations, a redo log for recording atomic metadata block
changes, and Oracle ADVM volume information.
When a database instance needs to create or open an Oracle ASM file, it communicates these
requests to the ASM instance. In response, the ASM instance provides the necessary file layout
information, or extent maps, to the database instance, enabling direct I/O operations.
Installation and Clustering: Oracle ASM is installed within the Oracle Grid Infrastructure
home, which is maintained separately from the Oracle Database home. Both ASM and
database instances require shared access to the physical disks within a disk group to function
correctly. In an Oracle RAC environment, a dedicated Oracle ASM instance runs on each
cluster node. Notably, multiple database instances residing on the same node will share this
single Oracle ASM instance. Oracle Clusterware plays a vital role in managing and clustering
these ASM instances, ensuring their high availability and coordinated operation across the
cluster.
The architectural decision to implement a separate, lightweight ASM instance is pivotal for
enabling shared storage in clustered environments, such as Oracle RAC, and for facilitating the
consolidation of multiple single-instance databases. By centralizing the management of storage
metadata within the ASM instance, Oracle ensures data consistency and coordinated access to
shared disk groups across all connected database instances. This clear separation of
concerns—storage management distinct from database processing—allows for specialized
optimization of each layer and enhances overall system resilience. For instance, an ASM
instance failure, while impacting databases on its local node, does not inherently necessitate an
operating system restart. This design pattern fundamentally supports high availability and
scalability by decoupling the complexities of storage management from the core database
processing.
ASM disks represent the fundamental physical or logical storage units that are aggregated to
form an ASM disk group. The nature of an ASM disk can vary depending on the operating
system: on Windows, an ASM disk is consistently a partition, whereas on other platforms, it may
be a partition of a Logical Unit Number (LUN), a network-attached file (such as NFS), or an
entire physical disk.
Disk Discovery: ASM discovers available disks by examining the paths specified in the
ASM_DISKSTRING initialization parameter. This discovery process is initiated during ASM
instance startup, when a disk group is mounted, when disks are added or resized within a disk
group, or when V$ASM_DISK views are queried. ASM is capable of discovering up to 10,000
disks. However, if more than 10,000 disks match the ASM_DISKSTRING parameter, only the
first 10,000 will be discovered.
Common issues encountered during disk discovery include the presence of multiple paths to the
same physical disk or multiple ASM disks with identical disk headers. Such errors can lead to
disk group mount failures or command failures when attempting to add disks. Resolution
typically involves adjusting the ASM_DISKSTRING value to ensure unique paths or configuring
multipathing software correctly, using pseudo-device names.
An Oracle ASM disk group serves as the foundational object within ASM, representing a logical
collection of physical disks that ASM manages as a single, consolidated storage unit. Database
administrators configure ASM by creating these disk groups, which then serve as the storage
repositories for all Oracle database files.
Key Properties and Characteristics: Each disk group within a given Oracle ASM instance
must possess a unique name. For optimal performance and balanced I/O distribution, it is a
critical best practice that all disks comprising a single disk group are of equal size and
performance characteristics. A fundamental rule of ASM is that a single physical disk can
belong to one and only one disk group at any given time. ASM disk groups are versatile and can
store a wide array of Oracle Database file types, including control files, data files, server
parameter files (SPFILEs), online redo logs, archive logs, RMAN backups, Flashback logs, and
Data Pump dumpsets.
Oracle ASM provides flexible redundancy options designed to protect data from disk failures
and ensure continuous data availability. These redundancy levels dictate the number of disk
failures that can be tolerated without data loss or the dismount of the disk group.
● EXTERNAL Redundancy:
○ In this configuration, ASM itself does not provide mirroring redundancy. Instead, it
relies entirely on the underlying storage system, such as a hardware RAID array, to
provide data protection.
○ A critical consequence of this setting is that any write error will result in a forced
dismount of the disk group, as ASM expects the external storage to handle data
integrity.
○ External redundancy is typically recommended when high-end storage arrays that
already offer robust RAID functionality are in use. This approach reduces the
overhead on the ASM instance, as it is not performing mirroring operations.
● NORMAL Redundancy:
○ Oracle ASM provides two-way mirroring by default under this setting, meaning that
two copies of every extent are maintained across different disks.
○ This level of redundancy tolerates the loss of one Oracle ASM disk within the disk
group without data loss.
○ A Normal redundancy disk group requires a minimum of two disks or two distinct
failure groups. Oracle generally recommends a minimum of three failure groups for
enhanced robustness.
● HIGH Redundancy:
○ This is the highest level of ASM-managed redundancy, providing three-way (triple)
mirroring by default.
○ It is designed to tolerate the simultaneous loss of two Oracle ASM disks, provided
they are located in different failure groups.
○ A High redundancy disk group necessitates a minimum of three disks or three
failure groups. For maximum robustness, Oracle recommends configuring a
minimum of five failure groups.
● FLEX and EXTENDED Redundancy:
○ These are more advanced redundancy types introduced in later Oracle versions,
designed for specialized configurations.
○ Newly created Flex disk groups typically default to two-way mirroring.
○ A key feature of Flex and Extended redundancy is that the disk group's default
redundancy can be overridden by specific file group redundancy properties, offering
finer-grained control.
○ EXTENDED redundancy specifically provides two-way mirroring within a data site
and assumes the presence of a vendor-supplied disk mirroring solution between
geographically separated sites.
○ File Groups, when utilized with FLEX or EXTENDED redundancy, enable more
flexible storage management by allowing control over redundancy and access
permissions for specific sets of files within a disk group.
Failure groups are a foundational concept in ASM mirroring, serving as logical groupings of
ASM disks that share a common potential failure mechanism. Their primary purpose is to
strategically store redundant copies of data. When mirroring is specified for a file, ASM
automatically places redundant copies of its extents into separate failure groups. This design
ensures that if all disks within a single failure group experience a failure (e.g., due to a shared
power supply failure on a storage shelf or a single HBA failure), data redundancy is preserved
by the copies residing in other, independent failure groups.
Failure groups are applicable to Normal, High, Flex, and Extended redundancy disk groups.
Conversely, External redundancy disk groups do not utilize failure groups, as the responsibility
for mirroring is delegated to the external storage system.
Guidelines for Failure Group Configuration:
● Each disk within a disk group can belong to only one failure group.
● For optimal availability and performance, it is highly recommended that all failure groups
within a disk group are of the same size. Disparate sizes can lead to reduced availability.
● Minimum requirements for creation: A Normal redundancy disk group requires at least two
failure groups, while a High redundancy disk group requires a minimum of three failure
groups. For enhanced robustness and fault tolerance, Oracle recommends configuring at
least three failure groups for Normal redundancy and at least five for High redundancy.
The multiple redundancy options (External, Normal, High) offered by ASM demonstrate its
adaptability, allowing it to integrate seamlessly with existing storage infrastructure (via External
redundancy) or to provide its own robust, host-based mirroring (via Normal and High
redundancy). The recommendation to use External redundancy in conjunction with high-end
storage arrays highlights a crucial trade-off between performance and overhead. Offloading
mirroring responsibilities to specialized hardware RAID controllers can significantly reduce the
CPU and I/O overhead on the ASM instance, potentially improving overall database I/O
performance. This decision requires a comprehensive understanding of the entire storage stack,
not just ASM in isolation, to balance host-based flexibility with hardware-accelerated
performance.
Furthermore, the concept and proper configuration of Failure Groups are paramount for
achieving true fault tolerance within ASM's mirroring capabilities. Simply having multiple copies
of data is insufficient if all copies are susceptible to a single point of failure (e.g., residing on
disks connected through the same power supply or HBA). Failure groups are designed to
ensure that mirrored copies are physically isolated, enabling ASM to gracefully tolerate the
failure of an entire set of disks that share a common failure mechanism. This is a critical design
consideration for high availability; misconfiguring failure groups can lead to data loss even when
mirroring is ostensibly enabled. This necessitates that DBAs think beyond logical storage
constructs and consider the physical layout of their infrastructure.
The Allocation Unit (AU) represents the smallest contiguous block of storage that ASM allocates
within a disk group. Data is striped across the disks in chunks equivalent to the AU size.
● Size Configuration: The AU size is a critical parameter set at the time of disk group
creation and cannot be modified thereafter. It can be configured in various sizes, ranging
from 1 MB to 64 MB. The default AU size is typically 1MB.
● Impact on Performance and Capacity:
○ A larger AU size can significantly reduce the number of extents required for a given
file size. This, in turn, can decrease metadata overhead and improve sequential I/O
performance, particularly beneficial for large data warehouses and Online Analytical
Processing (OLAP) workloads. For example, a 1GB datafile requires 1024 1MB
extents with a 1MB AU, but only 256 4MB extents with a 4MB AU.
○ Larger AU sizes also increase the likelihood that data will be stored sequentially on
traditional spinning disks, which can lead to reduced seek times and improved
performance for sequential reads.
○ The chosen AU size also dictates the maximum size of individual disks that can be
added to a disk group. For instance, a 1MB AU supports disks up to 4PB, while an
8MB or larger AU supports disks up to 32PB.
● Recommendations: Industry recommendations often suggest an AU size between 1 MB
and 4 MB for Online Transaction Processing (OLTP) workloads, which are characterized
by small, random I/Os. For OLAP workloads, where large sequential reads are common,
an 8 MB or larger AU size is typically recommended. For very large databases,
considering a 16 MB or larger AU size for disk groups storing the majority of the data can
be advantageous.
The immutability of the AU size once a disk group is created makes it a critical design-time
decision. Selecting the appropriate AU size based on the primary workload characteristics
(OLTP versus OLAP) is paramount for achieving long-term performance optimization. A smaller
AU generally supports better random I/O performance, which is typical of OLTP environments,
by allowing for finer-grained striping. Conversely, a larger AU benefits sequential I/O, common
in OLAP scenarios, by reducing metadata overhead and promoting greater data contiguity on
disk. This implies that DBAs must possess a clear and accurate understanding of their
database's I/O profile before deploying ASM, as an improperly chosen AU size can lead to
persistent performance bottlenecks that are both difficult and costly to rectify, often
necessitating the recreation of the disk group and subsequent data migration.
ASM's core functionality is built upon three fundamental storage mechanisms that automate and
optimize data placement and protection:
2.4.1 Striping
Striping is the process by which ASM evenly distributes data across all disks within a disk
group. This mechanism is crucial for optimizing performance by balancing the I/O load and
maximizing throughput across all available disks. ASM achieves this by dividing files into
uniformly sized chunks, typically 1 MB, known as extents, and then distributing these extents
across the disks in a round-robin fashion. When a file is read, its constituent extents are
accessed in parallel from multiple disks, which significantly improves read performance. This
automatic data distribution eliminates the need for manual I/O performance tuning, simplifying
administration.
2.4.2 Mirroring
Mirroring is a data protection feature that involves maintaining redundant copies of each extent
of a file to prevent data loss in the event of disk failures. A key principle of ASM mirroring is that
the redundant copy of each file extent is always stored on a different physical disk from the
original copy, ideally within a separate failure group to ensure true fault isolation. If a disk fails,
ASM can seamlessly continue to access the affected files by retrieving the mirrored copies from
the surviving disks. Unlike operating system-level mirroring, which typically operates at the disk
level, ASM performs mirroring at the file level, offering more granular and efficient data
protection. ASM supports both two-way mirroring (as used in Normal redundancy disk groups)
and three-way mirroring (as used in High redundancy disk groups).
Dynamic rebalancing stands out as one of ASM's most powerful and administratively beneficial
features. It enables DBAs to add or remove disks from a disk group while the database remains
fully operational, without requiring any downtime. When a storage configuration change occurs,
ASM automatically redistributes the file contents evenly across all disks in the disk group. This
includes moving data onto newly added disks or relocating data from disks that are being
removed. This redistribution process occurs in the background, designed to have minimal
impact on foreground database performance. The REBALANCE POWER setting allows
administrators to control the intensity of the I/O pressure generated during the rebalance
operation, with configurable values typically ranging from 0 (disabling rebalance) to 1024
(maximum power). In more recent Oracle versions, such as 23ai and later, enhancements have
been introduced to dynamically tune the asm_power_limit parameter, allowing ASM to balance
rebalance speed with the potential impact on other database workloads.
The combination of automated striping, mirroring, and dynamic rebalancing endows ASM with
inherent "self-healing" and "self-optimizing" capabilities. This means that ASM actively works to
maintain optimal performance and ensure data protection without requiring constant manual
intervention. For instance, following a disk failure, ASM's mirroring ensures continued database
operation, and upon replacement of the failed disk, the rebalancing process automatically
restores full data redundancy across the disk group. This significantly reduces the reactive
workload on DBAs, shifting their focus from the mundane task of "babysitting storage" to more
strategic and higher-value activities. Consequently, these automated features directly contribute
to higher overall system uptime and improved resilience against storage-related disruptions.
ASM provides built-in, automated support for the core functions of storage management, which
are fundamental to both performance and data protection:
● Striping: Data is automatically and evenly spread across all disks in a disk group. This
process is designed to balance I/O load uniformly and improve overall throughput, thereby
eliminating the need for manual I/O tuning efforts by DBAs.
● Mirroring: ASM includes integrated capabilities for creating redundant copies of data.
This ensures fault tolerance against disk failures, with configurable options for two-way
(Normal redundancy) or three-way (High redundancy) mirroring. This native data
protection can reduce or eliminate the reliance on external hardware RAID configurations,
though ASM can also operate effectively alongside them.
● Rebalancing: Data is automatically redistributed across the storage pool whenever disks
are added to or removed from a disk group. This dynamic process ensures consistent
performance and efficient storage utilization without requiring manual intervention,
maintaining optimal data distribution as the storage configuration evolves.
A hallmark feature of ASM is its dynamic scalability and elasticity, particularly its support for
online disk operations. This capability allows storage devices to be added to or removed from a
disk group while the database remains fully operational, without incurring any downtime. When
new storage is introduced, ASM intelligently and gradually redistributes existing data to leverage
the increased capacity, effectively eliminating potential I/O hot spots that might otherwise arise.
Conversely, when disks are removed, ASM automatically migrates all data from the disk being
detached to the remaining disks in the group, ensuring data protection before the disk is taken
offline. This inherent elasticity makes ASM exceptionally well-suited for dynamic environments
that demand continuous scalability without service interruptions.
ASM's direct integration into the Oracle Database ecosystem provides it with an intrinsic
understanding of the specific internal storage requirements and I/O patterns characteristic of
Oracle workloads. This deep integration enables highly optimized I/O operations directly
between the database and the underlying storage infrastructure, bypassing generic operating
system layers that might introduce inefficiencies. ASM seamlessly integrates with other critical
Oracle tools and technologies, enhancing their functionality:
● Recovery Manager (RMAN): ASM's integration with RMAN streamlines and enhances
database backup and recovery processes, allowing RMAN to directly manage files within
ASM disk groups.
● Data Guard: It improves resilience and recovery capabilities for disaster recovery
configurations by providing robust storage for both primary and standby databases.
● Oracle Real Application Clusters (RAC): ASM efficiently manages shared storage in
high-availability RAC clusters, ensuring consistent data access and performance across
all nodes.
● Oracle Zero Data Loss Recovery Appliance: ASM integrates with this appliance for
advanced, enterprise-grade data protection and recovery solutions.
Beyond these integrations, ASM offers native support for a wide array of Oracle files, including
datafiles, control files, redo logs, temporary files (tempfiles), and archive logs, ensuring optimal
management for all critical database components.
ASM is architected to provide robust high availability and reliability for database storage, which
is paramount for mission-critical applications. Key features that contribute to this include:
● Mirroring: As previously discussed, ASM's built-in mirroring capabilities provide inherent
fault tolerance against individual disk failures, ensuring data integrity and accessibility.
● Fast Mirror Resync: In the event of a disk failure and subsequent replacement, ASM
offers a fast mirror resynchronization process. This accelerates the rebuilding of mirrored
data, significantly minimizing the time required to restore full redundancy and ensuring
continuous data protection.
● Failure Recovery: ASM's design incorporates mechanisms for efficient failure recovery,
which ensures data protection and minimizes the risk of data loss or extended outages.
● Integration with Clusterware: In Oracle RAC environments, ASM works in concert with
Oracle Clusterware to manage shared storage resources. This integration is vital for
ensuring continuous database operation even during node outages or planned
maintenance, contributing to the overall high availability of the cluster.
One of the most significant advantages of adopting ASM is the substantial reduction in manual
administrative effort typically associated with traditional volume and file system management.
● No Manual File Management: DBAs are freed from the tedious and error-prone tasks of
manually defining or resizing individual datafiles. ASM handles these operations
automatically within its disk groups.
● Automatic Scaling: ASM disk groups inherently scale automatically as disks are added
or removed, simplifying capacity planning and expansion.
● Downtime Elimination: Crucially, many storage changes, such as adding or removing
disks from a disk group, can be performed online without requiring any database
downtime, supporting 24/7 operations.
● Intuitive Tools: Oracle provides simple and intuitive command-line tools, such as
asmcmd, which make monitoring and management of ASM environments straightforward.
This capability fundamentally shifts the DBA's role from "babysitting storage" to focusing
on more strategic database management tasks.
The cumulative effect of ASM's benefits—simplified management, extensive automation,
predictable performance, robust high availability, and seamless scalability—directly translates
into a lower Total Cost of Ownership (TCO) for Oracle database deployments. The reduction in
manual effort means that fewer DBA hours are consumed by mundane storage tasks, allowing
staff to concentrate on higher-value strategic initiatives. By eliminating the need for third-party
software layers, ASM helps reduce licensing costs and mitigates the complexity associated with
multi-vendor management and support. The ability to perform online storage changes minimizes
downtime, which has a direct positive impact on business continuity and revenue streams. This
makes ASM a compelling business case, extending its value far beyond purely technical
features and directly impacting an organization's financial bottom line.
Disk groups are typically established either during the initial Oracle Grid Infrastructure
installation or subsequently using tools like ASMCA, SQL*Plus, or ASMCMD. A widely adopted
best practice involves creating separate disk groups for different categories of Oracle files. For
instance, distinct disk groups are often designated for Oracle Cluster Registry (OCR) and voting
files, Grid Infrastructure Management Repository (GIMR) data files, database data files, and the
fast recovery area (FRA). This segregation helps optimize I/O performance by isolating different
workload types and enhances availability by preventing single points of failure across critical
components.
Adding disks to an existing disk group is a common operation performed to increase storage
capacity or to improve I/O performance by distributing the workload across a larger number of
devices. This operation is designed to be performed online, without requiring any database
downtime.
● Procedure:
1. First, identify which disks are available for addition by querying the V$ASM_DISK
view within the ASM instance. Disks with a HEADER_STATUS of CANDIDATE are
suitable for inclusion in a disk group.
2. Execute the SQL ALTER DISKGROUP command, specifying the ADD DISK
clause.
○ Example: SQL> ALTER DISKGROUP DATA1 ADD DISK '/devices/diskd*'
REBALANCE POWER 7 WAIT;.
● Rebalancing: Upon the successful addition of a disk, ASM automatically initiates a
rebalance operation for the disk group. This process redistributes data evenly across all
disks, including the newly added one, ensuring optimal performance and utilization. The
REBALANCE POWER clause within the ALTER DISKGROUP command allows
administrators to control the speed and intensity of this data redistribution, balancing the
rebalance completion time against potential impact on database performance.
Disks can be dropped from a disk group online, a common procedure when replacing aging
hardware, decommissioning storage, or reducing overall storage capacity.
● Procedure:
1. Utilize the SQL ALTER DISKGROUP command with the DROP DISK clause.
○ Example: SQL> ALTER DISKGROUP DATA1 DROP DISK diska2;.
● Rebalancing: When a disk is designated for removal, ASM first initiates a rebalance
operation. During this phase, all file extents residing on the disk to be dropped are
relocated to the remaining disks within the disk group. This ensures that data protection
and redundancy are maintained before the disk is finally detached from the disk group.
Various properties of an ASM disk group can be modified dynamically using ALTER
DISKGROUP SQL statements, the Oracle ASM Configuration Assistant (ASMCA) graphical
tool, or the ASMCMD chdg command. These modifications provide flexibility in managing the
disk group's behavior and characteristics:
● Redundancy: While not a common operation for existing data, the default redundancy
level of a disk group can theoretically be altered, though this is a complex procedure.
● Access Control: The ACCESS_CONTROL.ENABLED attribute can be set to TRUE to
activate Oracle ASM File Access Control, allowing for granular permissions on ASM files.
● Repair Time: The DISK_REPAIR_TIME attribute can be adjusted, which defines how
long ASM waits before permanently dropping a failed disk, allowing time for replacement
and fast mirror resynchronization.
● ADVM Volumes: Oracle ASM Dynamic Volume Manager (ADVM) volumes can be
added, resized, or dropped within a disk group, providing flexible storage for non-
database files.
● Renaming Disks: Individual disks within a disk group can be renamed using the ALTER
DISKGROUP RENAME DISK command.
● File Group Properties: For disk groups configured with FLEX or EXTENDED
redundancy, specific file group properties such as POWER_LIMIT (for rebalance control)
or OWNER (for access control) can be modified.
Proactive and continuous monitoring is essential for maintaining a healthy, high-performing, and
available ASM environment.
● Disk Group Usage: It is crucial to monitor the usable_file_mb metric, as this provides the
true usable capacity of a disk group, taking into account mirroring and striping overhead.
Relying solely on FREE_MB can be misleading. It is a best practice to set alerts when
usable_file_mb drops below a critical threshold, typically 15-20% of the total disk group
size.
● Disk Health and Status: Regularly checking the V$ASM_DISK view is vital to ascertain
the health and status of individual ASM disks. Administrators should look for undesirable
MOUNT_STATUS values (e.g., CLOSED, UNKNOWN), problematic HEADER_STATUS
values (e.g., FORMER, MISSING, or CANDIDATE when not expected), and STATE
values indicating issues (e.g., OFFLINE, UNKNOWN).
● Rebalance Operations: Tracking the frequency and duration of rebalance operations is
important. The V$ASM_OPERATION view can be queried to determine if a rebalance
operation is currently active or if it is running for an unusually long time, which might
indicate performance issues or bottlenecks.
● I/O Statistics: Monitoring I/O performance is critical. Views such as V$ASM_FILE and
V$ASM_DISK_IOSTAT provide valuable statistics on read/write operations, errors, and
latency, helping to identify potential I/O bottlenecks or performance degradation within
disk groups.
4.6 Oracle ASM Command-Line Utility (ASMCMD) for Disk Group Management
The Oracle ASM instance serves as the intermediary layer that makes ASM-managed files
accessible to Oracle Database instances. When a database instance needs to create or access
an Oracle ASM file, it communicates these requests to the ASM instance. The ASM instance
then provides the necessary file extent map information, allowing the database instance to
perform direct I/O operations to the underlying ASM disks. This tight integration simplifies
storage administration tasks for database files, enhances compatibility, and ensures optimal
performance for Oracle Database workloads.
In a multi-database environment on a single server, multiple database instances can share a
single ASM instance. Similarly, in an Oracle Real Application Clusters (RAC) environment, each
node runs one ASM instance, and these instances collectively manage the shared storage for
all RAC database instances across the cluster.
Oracle ASM offers seamless integration with Oracle Recovery Manager (RMAN), which
significantly streamlines database backup and recovery operations. RMAN's ability to directly
interact with ASM files is a major advantage for data protection strategies.
● Direct File Management: RMAN can directly read and write Oracle ASM files, enabling it
to copy data files into and out of ASM storage, or even between different ASM disk
groups. This capability is particularly useful for storing backups on user-managed disks or
migrating data between ASM disk groups.
● Database Migration: RMAN is the recommended tool for migrating an entire database or
specific parts of it into or out of Oracle ASM storage. This process typically involves
backing up the database, restoring files to the new ASM disk group, and then recovering
the database.
● Simplified Backup and Recovery: The integration simplifies the overall data backup
process and enhances recovery capabilities, providing a cohesive solution for data
protection within Oracle Database environments. RMAN handles the underlying database
procedures before and after backup or restore, reducing dependency on operating system
and SQL*Plus scripts.
5.5 Oracle ASM Cluster File System (ACFS) and Oracle ASM Dynamic Volume
Manager (ADVM)
Oracle ASM has evolved to manage not only Oracle Database files but also general-purpose
application files through the Oracle ASM Cluster File System (ACFS) and Oracle ASM Dynamic
Volume Manager (ADVM). These components extend ASM's storage management capabilities,
providing a unified solution for all customer data.
● Oracle ASM Dynamic Volume Manager (ADVM):
○ ADVM functions as a volume manager that provides standard disk device driver
interfaces to clients.
○ It allows file systems and other disk-based applications to send I/O requests to
ADVM volume devices, similar to how they would interact with other storage
devices on an operating system.
○ ADVM volumes are essentially virtual disks constructed from ASM dynamic
volumes within an ASM disk group. These volumes can host various file systems,
supporting non-database files such as executable files, report files, trace files, and
other application data.
○ ADVM extends ASM by providing a disk driver interface to ASM storage allocated
as ADVM volume files, ensuring volume mirror consistency even after abnormal
shutdowns or failures.
● Oracle ASM Cluster File System (ACFS):
○ ACFS is a multi-platform, scalable file system that extends ASM functionality to
support all customer files, including executables, application reports, BFILEs, video,
audio, text, images, and engineering drawings.
○ It complies with POSIX standards for Linux and UNIX, and Windows standards for
Windows, offering a common file system interface across diverse operating
environments.
○ ACFS leverages underlying ASM functionality for dynamic file system resizing,
maximized performance through direct access to ASM disk group storage,
balanced data distribution for I/O parallelism, and data reliability via ASM mirroring.
○ Key features of ACFS include dynamic online file system resizing, support for
multiple space-efficient snapshots, file system replication, tagging, advanced
encryption (though some encryption/security features were desupported in 21c+),
and auditing.
○ ACFS communicates with ASM through the ADVM interface.
The relationship between ACFS and ADVM is hierarchical: ADVM serves as the volume
manager for ACFS. ACFS is the file system layer built on top of ADVM, which in turn interfaces
with ASM disk groups. This architecture provides a unified storage management solution where
both database files (managed directly by ASM) and general-purpose files (managed by
ACFS/ADVM) are handled under the same ASM management umbrella. This eliminates the
need for multiple third-party software layers for volume management and file systems, thereby
reducing complexity and cost.
ASM's deep integration across the Oracle ecosystem is not merely a matter of compatibility; it
represents a designed synergy that forms the backbone of Oracle's comprehensive storage and
high-availability strategy. This tight coupling simplifies complex tasks such as disaster recovery
and data migration by allowing components like RMAN to directly manipulate files within ASM,
or for Data Guard to leverage ASM's redundancy and symmetrical setup across primary and
standby sites. The extension of ASM's capabilities to manage general-purpose files through
ACFS and ADVM further solidifies its position as a unified storage platform for both database
and non-database needs. This strategic approach by Oracle aims to provide an end-to-end
storage solution tailored for its entire software ecosystem, effectively reducing vendor sprawl
and mitigating architectural complexity for customers.
● Segregation of File Types: It is a critical best practice to configure separate disk groups
for different types of Oracle files. This includes distinct disk groups for Oracle Cluster
Registry (OCR) and voting files, the Grid Infrastructure Management Repository (GIMR),
database data files, and the fast recovery area (FRA). This segregation helps isolate I/O
profiles, preventing contention between different workload types (e.g., OLTP data vs.
archive logs) and improving recoverability. For instance, online redo logs are often placed
in a separate disk group for optimal write performance.
● Redundancy Selection: The choice of redundancy level should align with the underlying
storage infrastructure and the criticality of the data.
○ External Redundancy: Recommended when using high-end storage arrays that
already provide robust hardware RAID protection. This offloads mirroring overhead
from the ASM instance, potentially improving I/O performance.
○ Normal/High Redundancy: Use when hardware RAID is not present or when host-
based mirroring across storage systems (e.g., in extended clusters) is desired.
● Failure Group Design: Proper configuration of failure groups is paramount for true fault
tolerance. Ensure sufficient failure groups are defined to meet the redundancy
requirements (e.g., minimum 2 for Normal, 3 for High). Oracle recommends more (e.g., 3
for Normal, 5 for High) for increased robustness. All failure groups should ideally be of the
same size to prevent reduced availability.
● Disk Uniformity: All disks within a disk group should be of equal size and performance
characteristics. This ensures that data is evenly striped and prevents performance
bottlenecks caused by slower or smaller disks.
6.2 Disk Sizing and Capacity Planning
● Minimum Disk Count: Oracle generally recommends a minimum of four ASM disks per
ASM disk group to ensure adequate striping and I/O parallelism. Having multiple disks
allows for multiple I/O queues in the operating system, which can enhance performance.
● Capacity Buffer: Plan for future growth by allocating a buffer of at least 25-30% beyond
immediate requirements. This allows for dynamic expansion without immediate pressure.
● Granular Growth: While larger disks can reduce the initial number of disks, smaller initial
disk sizes provide for more granular growth, allowing for more flexible expansion as
needed.
● Redundancy Capacity: Ensure sufficient free space within disk groups to restore full
redundancy after a disk failure. For Normal redundancy, free space equivalent to the
largest failure group is needed. For High redundancy, space equivalent to the sum of the
two largest failure groups is required. Monitoring USABLE_FILE_MB is crucial for
accurate capacity assessment, as FREE_MB can be misleading due to mirroring. If
USABLE_FILE_MB becomes negative, immediate action to add more space is strongly
recommended.
● Dedicated Disks: Minimize I/O contention by dedicating disks in ASM disk groups,
avoiding their use by other applications.
● Persistent Device Naming/Permissions: Use Oracle ASMLib or Oracle ASM Filter
Driver (ASMFD) to ensure consistent device naming, ownership, and permissions across
system restarts. This prevents issues with disk discovery and access after reboots.
ASMLib simplifies storage management and reduces kernel resource usage.
● Multipathing: If multiple paths to disks exist, ensure that multipathing software is
correctly configured, and only the pseudo-device names are included in the
ASM_DISKSTRING to prevent disk discovery issues.
These best practices emphasize proactive design decisions—such as disk group separation,
careful redundancy planning, consistent disk sizing, and workload-specific AU tuning—to
establish a robust, high-performing, and scalable ASM environment from its inception.
Neglecting these foundational considerations can lead to persistent performance bottlenecks,
reduced availability, and significantly more complex troubleshooting efforts down the line. The
emphasis on dedicated disk groups for different file types (e.g., data, redo logs, FRA, OCR) is a
critical design pattern for segregating I/O profiles and improving recovery times, reflecting a
mature approach to database infrastructure management.
● Oracle Alert Logs and Trace Files: The ASM alert log is the primary source for critical
warnings and errors, including ORA- errors, rebalance messages, I/O errors, and disk
offline/fail events. The adrci command-line utility can be used to view and filter alert logs
for specific messages.
● V$ASM Views: A comprehensive set of dynamic performance views provides real-time
information about the ASM instance, disk groups, disks, and operations. Key views
include V$ASM_DISKGROUP, V$ASM_DISK, V$ASM_OPERATION, V$ASM_FILE, and
V$ASM_DISK_IOSTAT.
● ASMCMD Commands: Beyond disk group management, ASMCMD offers commands
useful for troubleshooting, such as lsdsk (to list disk details), iostat (for I/O statistics), du
(for disk usage), and lsof (to list open files).
● Oracle Enterprise Manager (OEM): OEM provides a graphical interface for monitoring
ASM health, alerts, and performance metrics, offering a centralized dashboard for
managing complex environments.
Troubleshooting ASM requires a systematic approach, often beginning with an examination of
alert logs and diagnostic views. Many issues encountered stem from underlying
misconfigurations related to disk paths, permissions, or the presence of duplicate disks.
Furthermore, resource contention during automated operations like rebalancing can also
manifest as performance problems. Proactive monitoring of key metrics, such as
usable_file_mb, disk health, and rebalance status, coupled with effective utilization of Oracle's
built-in diagnostic tools (V$ASM views, ASMCMD, adrci), are essential practices for both
preventing and rapidly resolving issues within an ASM environment.
8. Conclusion
Oracle Automatic Storage Management (ASM) stands as a cornerstone of modern Oracle
Database deployments, fundamentally transforming how storage is managed for mission-critical
applications. Introduced as an integrated file system and volume manager specifically optimized
for Oracle Database files, ASM addresses the complexities and limitations inherent in traditional
storage solutions.
The analysis presented in this guide underscores several key advantages of adopting ASM. Its
core value proposition lies in its ability to abstract physical storage, thereby simplifying database
administration by shifting focus from individual files to logical disk groups. This abstraction,
coupled with comprehensive automation of tasks such as striping, mirroring, and dynamic
rebalancing, significantly reduces operational complexity and the potential for human error.
These automated features imbue ASM with self-healing and self-optimizing capabilities,
allowing it to maintain optimal performance and data protection even during dynamic storage
configuration changes or disk failures, thereby increasing system uptime and resilience.
Furthermore, ASM's deep integration within the broader Oracle ecosystem—including Oracle
Real Application Clusters (RAC), Recovery Manager (RMAN), and Data Guard—enables a
cohesive and highly efficient storage foundation for high-availability and disaster recovery
strategies. The extension of ASM's capabilities through Oracle ASM Cluster File System (ACFS)
and Oracle ASM Dynamic Volume Manager (ADVM) to manage general-purpose files further
solidifies its role as a unified storage platform for all enterprise data. This holistic approach
minimizes reliance on disparate third-party tools, reducing software licensing costs and
simplifying overall architecture.
The strategic decision by Oracle to embed storage intelligence directly within the database
layer, as evidenced by ASM's architecture and continuous evolution, aims to provide superior
performance, availability, and manageability tailored specifically for Oracle workloads. This
integrated approach translates directly into a lower Total Cost of Ownership (TCO) for
organizations, as reduced manual effort, minimized downtime, and optimized resource
utilization contribute to significant operational efficiencies.
Effective implementation and ongoing management of ASM necessitate adherence to best
practices, particularly concerning disk group layout, redundancy planning, consistent disk sizing,
and workload-specific Allocation Unit (AU) tuning. These proactive design considerations are
crucial for building robust, high-performing, and scalable environments. Similarly, a systematic
approach to troubleshooting, leveraging Oracle's comprehensive diagnostic tools and
understanding common error patterns, is vital for maintaining the health and stability of ASM-
managed storage.
In conclusion, Oracle ASM is more than just a storage solution; it is a foundational technology
that enables the full potential of Oracle Database in enterprise environments, delivering
unparalleled levels of performance, availability, and administrative simplicity.
Here’s a detailed explanation of Oracle ASM (Automatic Storage Management), how it works,
and how to manage ASM disks and disk groups: