powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / dbms_stats.gather_schema_stats генерирует большое число parallel-ей
6 сообщений из 6, страница 1 из 1
dbms_stats.gather_schema_stats генерирует большое число parallel-ей
    #39978936
HrusT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый!

Смотрел мануалы по теме параллелей и сбора статистики, не нашёл решения.

Почему то подобный запуск сбора статистики по схеме генерирует всегда запросы с 160 параллелей(запрос ниже), при этом независимо от параметра parallel_max_servers = 160 или 80 или 400.

dbms_stats.gather_schema_stats('OWNER',
method_opt => 'FOR ALL COLUMNS SIZE SKEWONLY',
degree => 1,
cascade => true,
options => 'GATHER AUTO',
granularity => 'AUTO');

Текущая настройка сервера:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
parallel_adaptive_multi_user         boolean     FALSE
parallel_degree_limit                string      CPU
parallel_degree_policy               string      MANUAL
parallel_force_local                 boolean     FALSE
parallel_instance_group              string      
parallel_max_servers                 integer     160
parallel_min_percent                 integer     0
parallel_min_servers                 integer     80
parallel_min_time_threshold          string      AUTO
parallel_servers_target              integer     80
parallel_threads_per_cpu             integer     2
recovery_parallelism                 integer     0

cpu_count                            integer     80
parallel_threads_per_cpu             integer     2



Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
/* SQL Analyze(1) */
SELECT
        /*+  full(t)    parallel(t,160) parallel_index(t,160) dbms_stats cursor_sharing_exact use_weak_name_resl dynamic_sampling(0) no_monitoring xmlindex_sel_idx_tbl opt_param('optimizer_inmemory_aware' 'false') no_substrb_pad  */
        TO_CHAR(COUNT("DT"))                                 ,
        substrb(dump(MIN("DT"),16,0,64),1,240)               ,
        substrb(dump(MAX("DT"),16,0,64),1,240)               ,
        TO_CHAR(COUNT("DATEINS"))                            ,
        substrb(dump(MIN("DATEINS"),16,0,64),1,240)          ,
        substrb(dump(MAX("DATEINS"),16,0,64),1,240)          ,
        COUNT(rowidtochar(rowid))
FROM “OWNER”.”TABLE_NAME” t        
...
Рейтинг: 0 / 0
dbms_stats.gather_schema_stats генерирует большое число parallel-ей
    #39978960
HrusT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Oracle 12.2.0.1
...
Рейтинг: 0 / 0
dbms_stats.gather_schema_stats генерирует большое число parallel-ей
    #39981573
HrusT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Up
...
Рейтинг: 0 / 0
dbms_stats.gather_schema_stats генерирует большое число parallel-ей
    #39981600
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
HrusT,

Уменьшайте PARALLEL_DEGREE_LIMIT до вменяемых значений вместо cpu.
...
Рейтинг: 0 / 0
dbms_stats.gather_schema_stats генерирует большое число parallel-ей
    #39981757
HrusT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В alter session устанавливал - всё равно explain plan пишет, что dop берется по хинту т.е. 160. И по факту если смотреть если и режет, то только по количеству свободных параллелей в базе от 70 до 150 например.
...
Рейтинг: 0 / 0
dbms_stats.gather_schema_stats генерирует большое число parallel-ей
    #39981771
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
HrusT,

на систему установи.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / dbms_stats.gather_schema_stats генерирует большое число parallel-ей
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]