17.12.5 Настройка параллельных потоков для операций Online DDL
Процесс операции Online DDL, создающей или перестраивающей вторичный индекс, включает следующие этапы:
Сканирование кластеризованного индекса и запись данных во временные файлы сортировки
Сортировка данных
Загрузка отсортированных данных из временных файлов сортировки во вторичный индекс
Количество параллельных потоков, которые могут быть использованы для сканирования кластеризованного индекса, определяется переменной innodb_parallel_read_threads. Значение по умолчанию рассчитывается как количество доступных логических процессоров системы, деленное на 8, с минимальным значением по умолчанию 4. Максимальное значение равно 256, что является максимальным числом для всех сессий. Фактическое количество потоков, сканирующих кластеризованный индекс, равно значению, определённому настройкой innodb_parallel_read_threads, или количеству поддеревьев индекса для сканирования, в зависимости от того, какое значение меньше. Если предел потоков достигнут, сессии возвращаются к использованию одного потока.
Количество параллельных потоков для сортировки и загрузки данных контролируется переменной innodb_ddl_threads. Значение по умолчанию равно 4.
Применяются следующие ограничения:
Параллельные потоки не поддерживаются для построения индексов, включающих виртуальные столбцы.
Параллельные потоки не поддерживаются для создания индексов полнотекстового поиска.
Параллельные потоки не поддерживаются для создания пространственных индексов.
Параллельное сканирование не поддерживается для таблиц, определённых с виртуальными столбцами.
Параллельное сканирование не поддерживается для таблиц, определённых с индексом полнотекстового поиска.
Параллельное сканирование не поддерживается для таблиц, определённых с пространственным индексом.
© 2025 Oracle
Licensed under the GPLv2 License.