CftClub.ru
Клуб специалистов ЦФТ-Банк

Статистика

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Oracle DBA
Предыдущая тема :: Следующая тема  
Автор Сообщение
bibik
Участник


Вступление в Клуб: 24.02.2009
СообщениеЧт Май 14, 2009 04:17   Статистика Ответить с цитатой
Полезность: Нет оценки
Предлагаю поделиться опытом сбора статистики на РБО и ИБСО под ораклом 10.2.0.4:
1. Каким образом и как часто собираете?
2. Собираете ли системную статистику ?

У себя делаю так:
1.
Код:
begin
    dbms_stats.gather_schema_stats(
    ownname  =>'IBS',
    estimate_percent => dbms_stats.auto_sample_size,
    method_opt =>'FOR ALL INDEXED COLUMNS SIZE 1',
    degree =>15 ,
    granularity => 'ALL',
    cascade => true,
    options => 'GATHER',
    force => true);
end;


т.е. не использую гистограммы, насколько это правильно пока не определил, работаю в этом направлении...
Собираю раз в 2 дня.
2. По системной статистике - пока изучаю, может у кого уже есть опыт ее использования и есть ли от этого ощутимый эффект?
Serj
Профи


Вступление в Клуб: 02.08.2007
СообщениеЧт Май 14, 2009 05:14   Re: Статистика Ответить с цитатой
Полезность: Нет оценки
bibik пишет:
Предлагаю поделиться опытом сбора статистики на РБО и ИБСО под ораклом 10.2.0.4:
1. Каким образом и как часто собираете?
2. Собираете ли системную статистику ?

У себя делаю так:
1.

т.е. не использую гистограммы, насколько это правильно пока не определил, работаю в этом направлении...
Собираю раз в 2 дня.
2. По системной статистике - пока изучаю, может у кого уже есть опыт ее использования и есть ли от этого ощутимый эффект?
- статистика "обычная" распределение данных в таблице и ее индексах(DBMS_STATS.GATHER_SCHEMA_STATS('OWNER',cascade=>true) - собирается еженочно - статистика по часто изменяющемся таблицам в течении дня, по гигстограмам...в принципе хуже не будет но собирается по-дольше - раз в месяц вроде достаточно. Системная - пару раз - дневную и ночную - и потом при смене железа - достаточно полезная штука(некторые рекомендуют собирать несколько раз - для "усреднения" показателей).
andrey632
Участник со стажем


Вступление в Клуб: 19.03.2008
СообщениеЧт Май 14, 2009 06:27   Re: Статистика Ответить с цитатой
Полезность: Нет оценки
Serj пишет:
- статистика "обычная" распределение данных в таблице и ее индексах(DBMS_STATS.GATHER_SCHEMA_STATS('OWNER',cascade=>true) - собирается еженочно - статистика по часто изменяющемся таблицам в течении дня, по гигстограмам...в принципе хуже не будет но собирается по-дольше - раз в месяц вроде достаточно. Системная - пару раз - дневную и ночную - и потом при смене железа - достаточно полезная штука(некторые рекомендуют собирать несколько раз - для "усреднения" показателей).


системную как собираете ? типа :
begin
dbms_stats.gather_dictionary_stats(
null,
estimate_percent => 100,
method_opt =>'FOR ALL INDEXED COLUMNS SIZE AUTO',
degree => 2, -- parallel work, count of processors
granularity => 'ALL',
cascade => true,
options => 'GATHER');
end;
/
Serj
Профи


Вступление в Клуб: 02.08.2007
СообщениеЧт Май 14, 2009 06:49    Ответить с цитатой
Полезность: 1
После "переезда" с 9.2.0.6 на 10.2.0.4-
По словарю - собрал

Код:


exec dbms_stats.gather_fixed_objects_stats


затем по базе

Код:

SQL> exec DBMS_STATS.GATHER_DATABASE_STATS( block_sample => true, method_opt => 'FOR ALL INDEXES FOR ALL COLUMNS SIZE AUTO', granularity => 'ALL', cascade => true);


Потом - при активной работе
Код:

dbms_stats.gather_system_stats(gathering_mode=>'interval',interval=>600);


И по ночам

Код:
 
exec dbms_stats.gather_schema_stats('IBS',cascade=>true);

Вот этого кажется вполне достаточно.
tsktalk
Участник со стажем


Вступление в Клуб: 27.09.2007
СообщениеЧт Май 14, 2009 14:15    Ответить с цитатой
Полезность: Нет оценки
Serj пишет:
После "переезда" с 9.2.0.6 на 10.2.0.4-
По словарю - собрал


И по ночам

Код:
 
exec dbms_stats.gather_schema_stats('IBS',cascade=>true);

Вот этого кажется вполне достаточно.


так в девятке надо было собирать
exec dbms_stats.gather_schema_stats('IBS',cascade=>true);

так что ночную статистику стоит изменить, добавьте параметр
method_opt => 'FOR ALL INDEXES FOR ALL COLUMNS SIZE AUTO'

вот тогда будет более правильно
хотя статистика штка интересная, главное чтоб планы были устойчивые и относительно правильные
Smile
Serj
Профи


Вступление в Клуб: 02.08.2007
СообщениеПт Май 15, 2009 05:15    Ответить с цитатой
Полезность: Нет оценки
tsktalk пишет:

так что ночную статистику стоит изменить, добавьте параметр
method_opt => 'FOR ALL INDEXES FOR ALL COLUMNS SIZE AUTO'
- в свое время думал над этим, но гистограммы значительно замедляют сбор статистики - собственно тогда нужно понижать percent - чтобы за ночь успевала собираться статистика, по гистограммам - собрал единожды после перекочевывания с 9-ки, самое интересное система работает не медленнее чем до перехода - посему особенно не заморачиваюсь - вот ведь интересный вопрос - Oracle практически отказались от RBO - зато как собирать для CBO статистику оставили на откуп администратора - интересный момент - не правда -ли? Very Happy
bibik
Участник


Вступление в Клуб: 24.02.2009
СообщениеПн Май 18, 2009 07:05    Ответить с цитатой
Полезность: Нет оценки
tsktalk пишет:


так в девятке надо было собирать
exec dbms_stats.gather_schema_stats('IBS',cascade=>true);

так что ночную статистику стоит изменить, добавьте параметр
method_opt => 'FOR ALL INDEXES FOR ALL COLUMNS SIZE AUTO'

вот тогда будет более правильно
хотя статистика штка интересная, главное чтоб планы были устойчивые и относительно правильные
Smile


При этом очень сильно увеличивается время сбора.
Я пока отказался от гистограмм
Код:
method_opt =>'FOR ALL INDEXED COLUMNS SIZE 1'

, но есть подозрение что по некоторым таблицам все же неплохо их собирать, вот только как составить списочек таких табличек
Serj
Профи


Вступление в Клуб: 02.08.2007
СообщениеПн Май 18, 2009 08:56    Ответить с цитатой
Полезность: Нет оценки
bibik пишет:
tsktalk пишет:


так в девятке надо было собирать
exec dbms_stats.gather_schema_stats('IBS',cascade=>true);

так что ночную статистику стоит изменить, добавьте параметр
method_opt => 'FOR ALL INDEXES FOR ALL COLUMNS SIZE AUTO'

вот тогда будет более правильно
хотя статистика штка интересная, главное чтоб планы были устойчивые и относительно правильные
Smile


При этом очень сильно увеличивается время сбора.
Я пока отказался от гистограмм
Код:
method_opt =>'FOR ALL INDEXED COLUMNS SIZE 1'

, но есть подозрение что по некоторым таблицам все же неплохо их собирать, вот только как составить списочек таких табличек
- а зачем заморачиваться - поставьте сбор статистики по гистограмам по выходным дням и будет счастье.
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Oracle DBA Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru