У меня есть материализованное представление, определенное таким образом:
CREATE MATERIALIZED VIEW M_FOO
REFRESH COMPLETE ON COMMIT
AS
SELECT FOO_ID, BAR
FROM FOO
WHERE BAR IS NOT NULL
GROUP BY FOO_ID, BAR
/
COMMENT ON MATERIALIZED VIEW M_FOO IS 'Foo-Bar pairs';
Я написал как своего рода кеш: исходная таблица огромна, но количество разных пар довольно мало. Мне нужны эти пары, чтобы заставить их ПРИСОЕДИНИТЬСЯ с другими таблицами. Пока что так хорошо: он абсолютно ускоряет запросы.
Но я хочу убедиться, что представление не содержит устаревшие данные. Базовая таблица изменяется четыре или пять раз в месяц, но я не всегда знаю, когда. Я понимаю, что материализованное представление может быть определено так, чтобы оно обновлялось при изменении исходных таблиц. Однако документы становятся довольно сложными.
-
Какой точный синтаксис мне нужен использовать?
-
Нужно ли создавать материализованные просмотреть журнал?
-
Какая разница между быстрым и полное обновление?