100 DBMS_MEMOPTIMIZE
The DBMS_MEMOPTIMIZE
package provides the interface for managing the Memoptimized Rowstore data buffered in the large pool and the memoptimize pool.
This chapter contains the following topics:
100.1 DBMS_MEMOPTIMIZE Overview
The DBMS_MEMOPTIMIZE
package provides the interface for managing Memoptimized Rowstore data buffered in the large pool and the memoptimize pool.
The Memoptimized Rowstore provides the following functionality:
-
Fast Ingest
Fast ingest optimizes the processing of high-frequency, single-row data inserts. Fast ingest uses the large pool in the SGA for buffering the inserts before writing them to disk.
-
Fast Lookup
Fast lookup enables fast retrieval of data for high-frequency queries. Fast lookup uses a separate memory area in the SGA called the memoptimize pool for buffering data queried from tables.
The DBMS_MEMOPTIMIZE
package provides the following operations related to the Memoptimized Rowstore:
-
Fast ingest operations:
-
Provide the low high-water mark (low HWM) of the sequence numbers of rows that have been successfully written from the large pool to disk across all the sessions.
-
Provide the high-water mark (HWM) sequence number of the row that has been written to the large pool for the current session.
-
Flush all the fast ingest data from the large pool to disk for the current session.
-
-
Fast lookup operations:
-
Remove data for a table from the memoptimize pool.
-
Populate data for a table in the memoptimize pool.
-
100.2 Summary of DBMS_MEMOPTIMIZE Subprograms
This table lists the DBMS_MEMOPTIMIZE
subprograms and briefly describes them.
Table 100-1 DBMS_MEMOPTIMIZE Package Subprograms Related to Fast Ingest
Procedure | Description |
---|---|
Returns the low high-water mark (low HWM) of the sequence numbers of rows that have been successfully written to disk globally across all the sessions. |
|
Returns the high-water mark (HWM) sequence number of the row that has been written to the large pool for the current session. |
|
Flushes all the fast ingest data from the large pool to disk for the current session. |
Table 100-2 DBMS_MEMOPTIMIZE Package Subprograms Related to Fast Lookup
Procedure | Description |
---|---|
Removes data for a table from the memoptimize pool. |
|
Populates data for a table in the memoptimize pool. |
100.2.1 DROP_OBJECT Procedure
This procedure removes data for a table from the memoptimize pool.
Syntax
DBMS_MEMOPTIMIZE.DROP_OBJECT (
schema_name IN VARCHAR2,
table_name IN VARCHAR2,
partition_name IN VARCHAR2 DEFAULT NULL);
Parameters
Table 100-3 DROP_OBJECT Procedure Parameters
Parameter | Description |
---|---|
|
Name of the schema. |
|
Name of the table for which the data needs to be removed from the memoptimize pool. |
|
Name of the table partition for which the data needs to be removed from the memoptimize pool. This is an optional parameter and its default value is |
100.2.2 GET_APPLY_HWM_SEQID Function
This function returns the low high-water mark (low HWM) of sequence numbers of the records that have been successfully written to disk across all the sessions.
Syntax
DBMS_MEMOPTIMIZE.GET_APPLY_HWM_SEQID
RETURN number;
Return Value
Returns the low high-water mark (low HWM) of sequence numbers of the records that have been successfully written to disk across all the sessions.
100.2.3 GET_WRITE_HWM_SEQID Function
This function returns the high-water mark (HWM) sequence number of the record that has been written to the large pool for the current session.
Syntax
DBMS_MEMOPTIMIZE.GET_WRITE_HWM_SEQID
RETURN number;
Return Value
Returns the high-water mark (HWM) sequence number of the record that has been written to the large pool for the current session.
100.2.4 POPULATE Procedure
This procedure populates the data for a table in the memoptimize pool.
Syntax
DBMS_MEMOPTIMIZE.POPULATE (
schema_name IN VARCHAR2,
table_name IN VARCHAR2,
partition_name IN VARCHAR2 DEFAULT NULL);
Parameters
Table 100-4 POPULATE Procedure Parameters
Parameter | Description |
---|---|
|
Name of the schema. |
|
Name of the table for which the data needs to be populated in the memoptimize pool. |
|
Name of the table partition for which the data needs to be populated in the memoptimize pool. This is an optional parameter and its default value is |