Существует требование, чтобы мой проект вставлял 15 миллионов записей в таблицу после выполнения некоторых проверок, и это должно быть сделано за 20 минут.Обновление/Вставка 15 миллионов записей в базе данных оракулов
Таблица источников представляет собой промежуточную таблицу, которая получает данные из других приложений. Теперь из этой промежуточной таблицы мы должны вставлять данные в одну из базовых таблиц после валидации. И когда этот процесс заканчивается, мы должны вставить записи из промежуточной таблицы в две отдельные таблицы истории.
Время первой вставки должно составлять 20 минут. И для следующих двух вставок комбинированное время должно быть 20 минут.
Все четыре таблицы в одном и том же блоке, в той же схеме. Я использую Pro * C для проверки в случае 1, но во вторых вставках есть пакет plsql.
Может ли кто-нибудь помочь мне с любыми предложениями, база данных - это оракул 9i. Также каково максимальное количество записей, которые могут быть обработаны за 20 минут?
Откуда берутся строки? Вы действительно используете Oracle 9i, версию, которая по крайней мере имеет 5 основных изменений, и которые не поддерживались годами? Как, собственно, вы сегодня делаете нагрузку? Здесь есть много возможных архитектур, которые кажутся более чем достаточными. Oracle регулярно проводит демонстрацию, где загружает ТБ данных в хранилище данных, работающем на машине Exadata, в течение 1 часа презентации. –
Привет, Джастин. Эти строки поступают из другого приложения через инструмент ETL. Да, мы используем 9i, потому что вся система слишком стар. Для моей цели тестирования я просто вставляю любую запись вручную с помощью собственных сценариев подготовки тестовых данных. Пожалуйста, дайте мне знать, если требуется дополнительная информация. –
FYI Сегодня я пробовал с DOP 10 на столах, только вставка в одну таблицу заняла 19 минут. Но из-за большого количества партий, которые работают ночью, мы не можем делать много параллелизма. –