Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Сбор статистики не успевает отработать - поиск причин / 9 сообщений из 9, страница 1 из 1
27.03.2016, 23:51:50
    #39201620
Big_table
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сбор статистики не успевает отработать - поиск причин
Добрый день!
Прошу помочь - как определить таблицы, на которых стандартный оракловый джоб сбора статистики прерывается, ибо заканчивается его временное окно. На выходных сбор успевает закончиться, в будние нет. Что порекомендуете, какой подход здесь применить?
Спасибо.
...
Рейтинг: 0 / 0
28.03.2016, 01:33:57
    #39201640
Охрименко
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сбор статистики не успевает отработать - поиск причин
Big_table,

Например используя вьюху история активных запросов выбирая за время, предшествующее времени закрытия окна работы джоба.
...
Рейтинг: 0 / 0
28.03.2016, 01:59:52
    #39201643
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сбор статистики не успевает отработать - поиск причин
Big_tableПрошу помочь - как определить таблицы, на которых стандартный оракловый джоб сбора статистики прерываетсяdba_tables.last_analyzed?
Big_tableЧто порекомендуете, какой подход здесь применить?Это зависит от того, что ты хочешь получить и особенностей базы.
Если, например, есть секционированные таблицы по дню - часто имеет смысл копировать статистику ежедневно с предыдущих секций вместо её сбора.
Если сбор осуществляется с помощью gather_schema_stats, то для начала имеет смысл обратить внимание на options.
Потом на остальные параметры.
...
Рейтинг: 0 / 0
28.03.2016, 10:09:47
    #39201797
Big_table
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сбор статистики не успевает отработать - поиск причин
По dba_tables.last_analyzed не определишь таблицы, на которых прервался сбор статистики. Статистика в большие таблицы копируется заранее и блокируется. Также включена инкрементальная статистика. Тем не менее в будние дни пересобраться не успевает. Наверное здесь действительно единственный способ - анализ пл dba_hist_active_sess_history запросов шедулера, т. е. попытаться определить, по каким таблицам идет сбор при окончании временного окна для шедулера сбора статистики. Как считаете?
...
Рейтинг: 0 / 0
09.08.2016, 07:25:39
    #39288669
AlexVin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сбор статистики не успевает отработать - поиск причин
DBA_OPTSTAT_OPERATION_TASKS

правда аффтор не написал версию бд
...
Рейтинг: 0 / 0
09.08.2016, 10:26:11
    #39288741
Q.Tarantino
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сбор статистики не успевает отработать - поиск причин
по выходным собирать полную статистику, ежедневно только stale и будет вам счастье!
...
Рейтинг: 0 / 0
09.08.2016, 13:31:46
    #39288886
AlexVin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сбор статистики не успевает отработать - поиск причин
а каким селектом глянуть список объектов, по которым автотаск будет статистику пересобирать?
...
Рейтинг: 0 / 0
11.08.2016, 09:46:00
    #39290131
djeday84
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сбор статистики не успевает отработать - поиск причин
AlexVin,
можно так
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
DECLARE
ObjList dbms_stats.ObjectTab;
BEGIN
dbms_stats.gather_database_stats(objlist=>ObjList, options=>'LIST STALE');
FOR i in ObjList.FIRST..ObjList.LAST
LOOP
dbms_output.put_line(ObjList(i).ownname || '.' || ObjList(i).ObjName || ' ' || ObjList(i).ObjType || ' ' || ObjList(i).partname);
END LOOP;
END;
/
...
Рейтинг: 0 / 0
12.09.2016, 00:07:50
    #39307316
bob_allmighty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сбор статистики не успевает отработать - поиск причин
Big_table,

Сначала прочитать
Automatic Statistics Gathering does not Complete - Diagnostics Interpretation Guidelines (Doc ID 1902112.1)

Можно протрассировать сбор статистики

DBMS_STATS Tracing

Tracing is enabled by calling dbms_stats.set_global_prefs(‘trace’,<trace flags>)

Following are the possible values for the trace flags:

1 = use dbms_output.put_line instead of writing into trace file

2 = enable dbms_stat trace only at session level

4 = trace table stats

8 = trace index stats

16 = trace column stats

32 = trace auto stats – logs to sys.stats_target$_log

64 = trace scaling

128 = dump backtrace on error

256 = dubious stats detection

512 = auto stats job

1024 = parallel execution tracing

2048 = print query before execution

4096 = partition prune tracing

8192 = trace stat differences

16384 = trace extended column stats gathering

32768 = trace approximate NDV (number distinct values) gathering

Use a combination of flags to combine different tracing levels.

e.g.

exec dbms_stats.set_global_prefs('trace',to_char(512+128))
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Сбор статистики не успевает отработать - поиск причин / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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