Параллельное выполнение (распараллеливание) повышает скорость выполнения запросов, настройки и обслуживания базы данных Oracle. Разбив одну задачу на несколько меньших подзадач, каждая из которых выполняется в отдельном процессе, можно весьма заметно повысить производительность некоторых операций в базе данных.
Вот некоторые типы запросов, которые могут быть распараллелены:
- сканирование таблицы;
- вложенные циклы;
- соединение таблиц методом сортировки и слияния;
- группировка GROUP BY;
- подзапросы типа NOT IN (антисоединение);
- определенные пользователем функции;
- сканирование индекса;
- SELECT DISTINCT UNION и UNION ALL;
- соединение таблиц методом хеширования;
- ORDER BY и агрегирование;
- соединение типа «звезда» по битовым индексам (bitmap star joins);
- соединение по секциям (partition-wise join);
- хранимые процедуры (на языках PL/SQL и Java, а также внешние подпрограммы).
Помимо запросов распараллеливанию поддаются многие другие средства Oracle.