O'Reilly logo

Oracle Distributed Systems by Charles Dye

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Refresh Groups

As in the previous example, often you need snapshots on a group of related tables, which may have interdependencies. If you refresh snapshots individually, the resulting data is not guaranteed to have a point-in-time consistency; in fact, it probably will not. For example, if we were to refresh the ORDER_ITEMS snapshot followed by the ORDERS table, we could end up with entries in ORDERS that have no corresponding entries in ORDER_ITEMS if users create orders while the ORDER_ITEMS table refreshes. Obviously, this is not an acceptable state of affairs.

Oracle uses theconcept of a refresh group to encapsulate snapshots that must have point-in-time consistency. You are guaranteed that all snapshots in a single refresh group will be refreshed with data from the master tables as of a single point in time. In addition, refresh groups provide ease of management because Oracle includes a variety of built-in procedures in the package DBMS_REFRESH for their maintenance. The following procedures manipulate refresh groups at the snapshot site:

DBMS_REFRESH.ADD

Adds a snapshot to an existing group.

DBMS_REFRESH. CHANGE

Modifies properties of a refresh group, such as refresh interval, next refresh time, and so on.

DBMS_REFRESH.DESTROY

Drops a refresh group.

DBMS_REFRESH. MAKE

Creates a refresh group.

DBMS_REFRESH. SUBTRACT

Removes a snapshot from an existing refresh group.

The following sections provide brief examples of using these procedures; refer to Appendix A, for the complete API ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required