У меня сложный запрос, который не удовлетворяет условиям для создания материализованного представления с помощью «REFRESH FAST ON COMMIT» или «REFRESH FAST». Я создал материализованное представление с помощью «СТРОИТЬ НЕМЕДЛЕННО». Я создал материализованные журналы просмотра для всех таблиц, используемых в запросе. Мой вопрос: когда я обновляю материализованное представление, будет ли оно использовать журналы материализованного представления для постепенного обновления таблицы без наличия у материализованного представления параметров создания «REFRESH FAST ON COMMIT» или «REFRESH FAST». Будет ли он повторять запрос и создавать все записи с нуля при обновлении.
1 ответ
Я не полностью понял ваш вопрос, но вот несколько ответов:
Вы можете установить REFRESH FAST
, REFRESH COMPLETE
и REFRESH FORCE
. REFRESH FORCE
означает, что Oracle пытается выполнить БЫСТРОЕ обновление, и если это невозможно, выполните ПОЛНОЕ обновление. REFRESH FORCE
используется по умолчанию, если вы опустите предложение.
ПОЛНОЕ обновление не затрагивает какой-либо ЖУРНАЛ МАТЕРИАЛИЗОВАННЫХ ПРОСМОТРОВ, они остаются до тех пор, пока не будут обновлены все БЫСТРЫЕ МАТЕРИАЛИЗИРОВАННЫЕ ВИДЫ, т.е. ПОЛНОЕ обновление повторить запрос и построить все записи с нуля.
По-видимому, вы пытаетесь создать БЫСТРО обновляемый МАТЕРИАЛИЗОВАННЫЙ ВИД, но у вас это не получилось.
Попробуйте процедуру DBMS_MVIEW.EXPLAIN_MVIEW, чтобы проверить, почему БЫСТРОЕ обновление это невозможно. Для этой процедуры требуется таблица MV_CAPABILITIES_TABLE
:
CREATE TABLE MV_CAPABILITIES_TABLE
(
STATEMENT_ID VARCHAR2(30 BYTE),
MVOWNER VARCHAR2(30 BYTE),
MVNAME VARCHAR2(30 BYTE),
CAPABILITY_NAME VARCHAR2(30 BYTE),
POSSIBLE CHAR(1 BYTE),
RELATED_TEXT VARCHAR2(2000 BYTE),
RELATED_NUM NUMBER,
MSGNO INTEGER,
MSGTXT VARCHAR2(2000 BYTE),
SEQ NUMBER
)
Похожие вопросы
Новые вопросы
oracle
Oracle Database - это многомодельная система управления базами данных, созданная корпорацией Oracle. НЕ используйте этот тег для других продуктов, принадлежащих Oracle, таких как Java и MySQL.
refresh fast
, ему не нужны журналы MV. Это факт. Теперь, раз уж это факт, нужны ли вам журналы MV? Ответ: журналы существуют не только для ОДНОГО материализованного представления. У вас могут быть разные MV, которые используют одну и ту же базовую таблицу (или таблицы). Некоторые из этих клипов могут быстро обновляться, другие - нет. Журнал MV в базовой таблице - это всего лишь ОДИН журнал - он БУДЕТ использоваться любыми MV, которые быстро обновляются и используют эту таблицу, даже если другие MV в таблице не обновляются быстро.