Подсказки базы данных Oracle для массовой вставки из DBLink
Мне нужно вставить около 50 таблиц, которые имеют объемные данные в них через DBLink. Я вообще пользуюсь утверждением
insert into <table_name>
select * from <table_name>@DBLink
В некоторых случаях вставка занимает слишком много времени. Какие полезные советы базы данных можно использовать здесь, чтобы ускорить процесс?
1 ответ
Решение
Ты можешь использовать ORACLE's
APPEND
намек
Подсказка APPEND указывает оптимизатору выполнить вставку с прямым путем, что повышает производительность операций INSERT .. SELECT по ряду причин:
Данные добавляются в конец таблицы, а не пытаются использовать существующее свободное пространство в таблице.
Данные записываются непосредственно в файлы данных, минуя буферный кеш.
Ограничения ссылочной целостности не рассматриваются. *
Обработка триггера не выполняется. *
Синтаксис:
INSERT /* + APPEND */ INTO YourTable
SELECT * FROM YourTable@DBLink