Ограничить количество строк, которые вы можете вставить, будут два фактора: временное пространство и пространство отмены.
Вы можете поместить во временную таблицу столько данных, сколько есть места во временном табличном пространстве.Если временному табличному пространству разрешено расти (с помощью авторасширения файлов данных и табличного пространства), вы будете ограничены только дисковым пространством.Теперь вы хотите оценить размер ваших рядов и предоставить дополнительное пространство для накладных расходов.Это даст вам приблизительную оценку размера, необходимого для временного табличного пространства.
Одна транзакция должна полностью поместиться в табличное пространство отмены.Данные отмены для вставки меньше, чем другие DML, однако 80-миллиметровые строки произведут МНО от отмены.Если вы также удаляете эти строки из какой-то другой таблицы, отмена займет примерно то же пространство, что и исходные строки.Вероятно, вы используете автоматическое управление отменой, просто установите табличное пространство и его файлы данных на автоматическое расширение, и все в порядке.
Если это однократный выстрел, вы можете уменьшить размер как временных, так и отмененных табличных пространствкак только вы закончите.Если вы собираетесь выполнять эту операцию на регулярной основе, просто позвольте табличным пространствам расти и оставляйте их там потом.
Единственная реальная проблема с 80-миллиметровой транзакцией строки - это слишком долгое время отката,опыт, если что-то пойдет не так.В частности, удаленные строки сделают откат намного длиннее, чем фактическое удаление.
Хотя в Oracle и крупной транзакции нет ничего принципиально неправильного (Oracle будет масштабироваться), разделяя всю работув более мелкие рабочие единицы позволит вам перезапустить процесс быстрее и на меньшем подмножестве данных в случае сбоя.