Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
RBD_END.DOC
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
548.35 Кб
Скачать

Создание снимков

Снимки лежат в схеме пользователя, который их создает. Длина имени снимка не должна превышать 23 символа. Когда создается снимок, Oracle выполняет несколько внутренних операций:

  1. На узле снимка создается таблица для хранения строк, извлекаемых определяющим запросом снимка. Эта таблица называется базовой таблицей снимка и имеет специальное название SNAP$_<имя снимка>. Эту таблицу нельзя изменять никаким образом. Oracle создает только читаемый обзор этой таблицы для запросов, выдаваемых по снимку. Этот вид имеет имя, определяемое в предложении CREATE SNAPSHOT (т.е. при обращении к снимку мы обращаемся к обзору).

  2. Oracle создает второй локальный обзор по удаленной главной таблице и использует этот обзор при освежении снимка. Имя этого обзора MVIEW_<имя снимка>. Дополнительно, если снимок является простым, Oracle создает индекс по таблице SNAP$_<имя снимка>, который имеет имя PK$_ <имя снимка>.

Установление параметров памяти для снимков.

В общем случае области памяти снимков должны имитировать память таблицы. Если таблицы кластеризованы, то нужно кластеризировать и снимки. При создании сложного снимка, который обновляется полностью, параметры PCTFREE нужно установить в 0, а PCTUSED – в 100. Все параметры памяти можно изменять с помощью команды ALTER SNAPSHOT. Для снимка нельзя изменять определяющий запрос.

Каждый снимок индивидуально освежается в определенной транзакции. Быстрое освежение для сложного снимка является полным. Снимки могут обновляться автоматически или вручную. В большинстве случаев для простых снимков предпочтительно быстрое освежение.

Если главные таблицы подвергаются регулярному числу обновлений за единый период времени, то обновлять снимки нужно автоматически, а после массовых загрузок данных в главные таблицы снимки нужно обновлять вручную.

Конфигурирование автоматических обновлений

  1. Создать или изменить снимок так, чтобы он стал автоматическим, указав опции автоматического обновления (REFRESH в операторе CREATE SNAPSHOT).

  2. Запустить утилиту обновления на БД, содержащей снимки.

Допустимые опции автоматического обновления:

  • FAST – указывается только для простых снимков, обозначает быстрое обновление;

  • COMPLETE – полное обновление, применяется для простых и сложных снимков;

  • PORGE – применяется для простых снимков, выполняет быстрое обновление, если это возможно, и полное, если невозможно.

  • START WITH – задает момент времени начала автоматического обновления. Если он опущен, то момент первого автоматического обновления вычисляется, исходя из времени создания снимка и параметра Next.

  • NEXT – задает интервал автоматического обновления для снимков. Next всегда отсчитывается от последнего обновления, независимо от того автоматическое оно или ручное.

Временные характеристики обновления:

  1. Календарное выражение в параметрах START WITH и NEXT должно вычисляться как будущий момент времени;

  2. Литерал должен заключаться в кавычки, а календарное выражение – нет.

Пример

SYSDATE+7; - снимок будет обновляться через 7 дней после последнего обновления (задается в параметре Next)

NEXT_DAY( TRUNC (SYSDATE), ‘Monday’)+15/24 ; - снимок должен обновляться каждый понедельник в 15:00.

NEXT_DAY( ADD_MONTHS (TRUNC (SYSDATE,’Q’), 3), ‘THURSDAY’ ); - обновление в первый четверг каждого квартала.

Проблемы, возникающие при автоматическом обновлении снимков:

  • Отсутствие утилиты обновления;

  • Прерывающий сбой сети или остановка экземпляра БД Oracle.

На каждом снимке установлен флажок, что он должен быть обновлен и при ликвидации проблемы снимок обновится.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]