With the DBMS_STORAGE_MAP
package, you can communicate with the Oracle background process FMON to invoke mapping operations that populate mapping views. FMON communicates with operating and storage system vendor-supplied mapping libraries.
This chapter contains the following topics:
Overview
Operational Notes
The following terminology and descriptions will help you understand the DBMS_STORAGE_MAP
API:
Mapping libraries
Mapping libraries help you map the components of I/O processing stack elements. Examples of I/O processing components include files, logical volumes, and storage array I/O targets. The mapping libraries are identified in filemap.ora
.
Mapping files
A mapping file is a mapping structure that describes a file. It provides a set of attributes, including file size, number of extents that the file is composed of, and file type.
Mapping elements and sub-elements
A mapping element is the abstract mapping structure that describes a storage component within the I/O stack. Examples of elements include mirrors, stripes, partitions, raid5, concatenated elements, and disks—structures that are the mapping building blocks. A mapping sub-element describes the link between an element and the next elements in the I/O mapping stack
Mapping file extents
A mapping file extent describes a contiguous chunk of blocks residing on one element. This includes the device offset, the extent size, the file offset, the type (data or parity), and the name of the element where the extent resides. In the case of a raw device or volume, the file is composed of only one file extent component. A mapping file extent is different from Oracle extents.
See Also:
Oracle Database Administrator's Guide for more information
Oracle Database Reference for V$MAP
views, including V$MAP_FILE
, V$MAP_ELEMENT
, V$MAP_SUBELEMENT
, V$MAP_FILE_EXTENT
For MAP_ELEMENT
, MAP_FILE
, and MAP_ALL:
Invoking these functions when mapping information already exists will refresh the mapping if configuration IDs are supported. If configuration IDs are not supported, then invoking these functions again will rebuild the mapping.
See Also:
Oracle Database Administrator's Guide for a discussion of the configuration ID, an attribute of the element or file that is changed.Table 104-1 DBMS_STORAGE_MAP Package Subprograms
Subprogram | Description |
---|---|
Drops all mapping information in the shared memory of the instance |
|
Drops the mapping information for the element defined by |
|
Drops the file mapping information defined by |
|
Locks the mapping information in the shared memory of the instance |
|
Builds the entire mapping information for all types of Oracle files (except archive logs), including all directed acyclic graph (DAG) elements |
|
Builds mapping information for the element identified by |
|
Builds mapping information for the file identified by |
|
Builds the mapping information for the Oracle object identified by the object name, owner, and type |
|
Loads the entire mapping information from the data dictionary into the shared memory of the instance |
|
Saves information needed to regenerate the entire mapping into the data dictionary |
|
Unlocks the mapping information in the shared memory of the instance. |
This function drops all mapping information in the shared memory of the instance.
DBMS_STORAGE_MAP.DROP_ALL( dictionary_update IN BOOLEAN DEFAULT TRUE);
Table 104-2 DROP_ALL Function Parameters
Parameter | Description |
---|---|
|
If |
This function drops the mapping information for the element defined by elemname
.
DBMS_STORAGE_MAP.DROP_ELEMENT( elemname IN VARCHAR2, cascade IN BOOLEAN, dictionary_update IN BOOLEAN DEFAULT TRUE);
Table 104-3 DROP_ELEMENT Function Parameters
Parameter | Description |
---|---|
|
The element for which mapping information is dropped. |
|
If |
|
If |
This function drops the file mapping information defined by filename
.
DBMS_STORAGE_MAP.DROP_FILE( filename IN VARCHAR2, cascade IN BOOLEAN, dictionary_update IN BOOLEAN DEFAULT TRUE);
Table 104-4 DROP_FILE Function Parameters
Parameter | Description |
---|---|
|
The file for which file mapping information is dropped. |
|
If |
|
If |
This procedure locks the mapping information in the shared memory of the instance. This is useful when you need a consistent snapshot of the V$MAP tables. Without locking the mapping information, V$MAP_ELEMENT
and V$MAP_SUBELEMENT
, for example, may be inconsistent.
DBMS_STORAGE_MAP.LOCK_MAP;
This function builds the entire mapping information for all types of Oracle files (except archive logs), including all directed acyclic graph (DAG) elements. It obtains the latest mapping information because it explicitly synchronizes all mapping libraries.
DBMS_STORAGE_MAP.MAP_ALL( max_num_fileext IN NUMBER DEFAULT 100, dictionary_update IN BOOLEAN DEFAULT TRUE);
Table 104-5 MAP_ALL Function Parameters
Parameter | Description |
---|---|
|
Defines the maximum number of file extents to be mapped. This limits the amount of memory used when mapping file extents. The default value is |
|
If |
You must explicitly call MAP_ALL
in a cold startup scenario.
This function builds mapping information for the element identified by elemname
. It may not obtain the latest mapping information if the element being mapped, or any one of the elements within its I/O stack (if cascade
is TRUE
), is owned by a library that must be explicitly synchronized.
DBMS_STORAGE_MAP.MAP_ELEMENT( elemname IN VARCHAR2, cascade IN BOOLEAN, dictionary_update IN BOOLEAN DEFAULT TRUE);
Table 104-6 MAP_ELEMENT Function Parameters
Parameter | Description |
---|---|
|
The element for which mapping information is built. |
|
If |
|
If |
This function builds mapping information for the file identified by filename
. Use this function if the mapping of one particular file has changed. The Oracle database server does not have to rebuild the entire mapping.
DBMS_STORAGE_MAP.MAP_FILE( filename IN VARCHAR2, filetype IN VARCHAR2, cascade IN BOOLEAN, max_num_fileextent IN NUMBER DEFAULT 100, dictionary_update IN BOOLEAN DEFAULT TRUE);
Table 104-7 MAP_FILE Function Parameters
Parameter | Description |
---|---|
|
The file for which mapping information is built. |
|
Defines the type of the file to be mapped. It can be " |
|
Should be If |
|
Defines the maximum number of file extents to be mapped. This limits the amount of memory used when mapping file extents. The default value is |
|
If |
This function may not obtain the latest mapping information if the file being mapped, or any one of the elements within its I/O stack (if cascade
is TRUE
), is owned by a library that must be explicitly synchronized.
This function builds the mapping information for the Oracle object identified by the object name, owner, and type.
DBMS_STORAGE_MAP.MAP_OBJECT( objname IN VARCHAR2, owner IN VARCHAR2, objtype IN VARCHAR2);
Table 104-8 MAP_OBJECT Function Parameters
Parameter | Description |
---|---|
|
The name of the object. |
|
The owner of the object. |
|
The type of the object. |
This function loads the entire mapping information from the data dictionary into the shared memory of the instance. You can invoke RESTORE
only after a SAVE
operation. You must explicitly call RESTORE
in a warm startup scenario.
DBMS_STORAGE_MAP.RESTORE;
This function saves information needed to regenerate the entire mapping into the data dictionary.
DBMS_STORAGE_MAP.SAVE;
This procedure unlocks the mapping information in the shared memory of the instance.
DBMS_STORAGE_MAP.UNLOCK_MAP;