Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Падение производительности, Иногда, но основательно! 
:(
    Опции темы
setnull
Дата 23.6.2009, 12:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 417
Регистрация: 3.7.2007

Репутация: 1
Всего: 1



Все здравствуйте!!!

Есть запрос на выборку данных. При этом параллельно производится (не интенсивное, но постоянное) внесение новых данных.
Время от времени (причем промежутки никак не нормированы) выполнение этого запросы происходит очень долго и ресурсоемко. Остальное время с ним нет никаких проблем....


С чем это может быть связано?

Вот додумался засечь используемый план... Может быть, что это происходит пересчет плана или оптимизации (я в этом просто практически ничего не понимаю, если не считать наличие какого-то абстарактног представления)?

Может это также быть следствием того, что все запросы идут по соединениям одинакового типа.
Я имею виду, есть ли в Оракл возможность производить  различные типы запросов (чтение/запись), используя рзличные типы соединений (по уровню изоляции/способу доступа)? И может ли это поспособствовать разоешение исходной проблемы?


Спасибо!!!
PM MAIL   Вверх
Zloxa
Дата 23.6.2009, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 37
Всего: 161



Это этот запрос начинает периодически тормозить?
План запроса при торможении и при нормальной работе одинаков?
Как гипотеза - у тебя может периодически обрабатывать автоматический сбор статистики. После того как статистика по объекту изменяется, сбрасываются все планы запросов, в которых использовался этот объект, при первом выполнении запроса, планы строятся заново. При этом, если при первом выполнении запрос использует не типичные значения в бинде(например значение с высокой селективностью, в то время как обычно используется значение с низкой селективностью), в результате бинд пикинга план может оказаться не эффективным для типичных значений биндов. Этот план закрепится и будет использован для последующих вызовов и на типичных вызовах проявятся тормоза.

Но эта гипотиреоза из разряда "пальцем в небо". Такая штука встречается весьма редко. Может у тебя все проще - касперксий каконить делает плановое сканирование в "периоды торможениия"

Это сообщение отредактировал(а) Zloxa - 23.6.2009, 14:04


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
setnull
Дата 23.6.2009, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 417
Регистрация: 3.7.2007

Репутация: 1
Всего: 1



Ага это этот запрос....

Да, я тоже об этом думал, и это очень на это похоже (что перестраивается план)

Цитата

Этот план закрепится и будет использован для последующих вызовов и на типичных вызовах проявятся тормоза.


Запроса ведет себя наоборот: примерно раз в час-два тормозит (единично). Как только тормознутый запрос выполняется - далее повторные запросы выполняются быстро (До следующего "чекпоинта")... Т.е. на перестройку очень похоже... 

Цитата

Но эта гипотиреоза из разряда "пальцем в небо". Такая штука встречается весьма редко. Может у тебя все проще - касперксий каконить делает плановое сканирование в "периоды торможениия"

Врядли.... часто делаешь запрос и, очевидно, в этот же момент набухает проц.  Далле по сценарию. Плюс, параллельно с тормозящим запросом, другие отрабатыаются нормально....

Но!
Неужели отстройка плана может осуществляться до 2 минут????????
И это при отм, что обновлятся он после добавления 20 - 30 записей?

GATHER_STATS_JOB - У меня Enabled = true

Это он пересчитывает статистику, или пеестраивает планы? (Прошу прощения, все никак руки не дойдут до статистики)...


Каксательно запроса. После тормозов план и окружение оптимизации у него не меняется. Но меняется (что бросилось в глаза)
CHILD_ADDRESS (все же что это такое)
и CONCURRENCY_WAIT_TIME (опять кошусь в сторону уровней изоляции запрососв. В Оракле это есть?)


Это сообщение отредактировал(а) setnull - 23.6.2009, 14:38
PM MAIL   Вверх
ToshaCh
Дата 23.6.2009, 14:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 555
Регистрация: 10.11.2005
Где: Москва, РФ

Репутация: 12
Всего: 26



Хм. А загрузка данных идёт через одну сессию или через несколько? И есть ли там update или только insert. Может элементарная блокировка на запись вызывает лавину сессий? 
Думаю что чем годать на гуще лучше awr репорт изучить для этого времени. 


--------------------
Slackware 12.2 | Linux 2.6.27 | Fluxbox 1.1.1 | Wmii 3 | Opera 9.63 
--
Oracle это не только способ отмывания денег, но и вполне себе преличная база данных.
PM MAIL Jabber   Вверх
Zloxa
Дата 23.6.2009, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 37
Всего: 161



Цитата(setnull @  23.6.2009,  14:34 Найти цитируемый пост)
Как только тормознутый запрос выполняется - далее повторные запросы выполняются быстро

Это более похоже на кэширование. При первом запросе блоки таблиц попадают в кэш, далее берутся успешно из кэша, много времени погодя, данные вымываются из кэша, на их считку требуется время.

Тут, увы, я мало могу помочь. Я не DBA, программист.

Добавлено через 3 минуты и 40 секунд
PS Так все тки что тормозит то. Чтение или запись? Если запись, то действительно забываем обо всем ранее сказанном, блокировки смотрим.


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
setnull
Дата 23.6.2009, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 417
Регистрация: 3.7.2007

Репутация: 1
Всего: 1



Не не, тормозят именно  селекты.... 

Да, и окешировании я думал, только забыл спросить, есть ли такое.....


а как это можно выяснить?

Добавлено через 3 минуты и 2 секунды
Цитата(ToshaCh @ 23.6.2009,  14:40)
Хм. А загрузка данных идёт через одну сессию или через несколько? И есть ли там update или только insert. Может элементарная блокировка на запись вызывает лавину сессий? 
Думаю что чем годать на гуще лучше awr репорт изучить для этого времени.

Все идет через различные сессии..........
PM MAIL   Вверх
Zloxa
Дата 23.6.2009, 16:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 37
Всего: 161



Цитата(setnull @  23.6.2009,  15:59 Найти цитируемый пост)
есть ли такое.....

есть buffer cashe

Можно оценить что нам даст его увеличение/уменьшение
7.2.2.2 Using V$DB_CACHE_ADVICE
Можно посмотреть под что у нас он занят
7.2.7 Determining Which Segments Have Many Buffers in the Pool

Только что это нам дает?
Не будешь же ты кэш увеличивать пропорционально росту количества данных в твоей таблице.

Однако от чего последующие запросы не тормозят, это знание может таки дать объяснение smile

Попробуй на тестовом окружении сбросить  кэшбуфер. Глянуть не проявится ли симптоматика в этом случае. 

Это сообщение отредактировал(а) Zloxa - 23.6.2009, 16:53


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
ToshaCh
Дата 23.6.2009, 17:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 555
Регистрация: 10.11.2005
Где: Москва, РФ

Репутация: 12
Всего: 26



setnull, 
Ты вроде, как-то спрашивал как настроить EM. Он там у тебя есть? 
Если да то пройдись по адвизорам: Зайди на страничку perfomance и запусти оттуда awr репорт для того момента времени когда база тормозила. 
А потом с той же странички попади в ADDM он более нагляден и даже даст тебе советы. 

З.Ы. Всё это можно сделать и без EM, но объяснять дольше.


--------------------
Slackware 12.2 | Linux 2.6.27 | Fluxbox 1.1.1 | Wmii 3 | Opera 9.63 
--
Oracle это не только способ отмывания денег, но и вполне себе преличная база данных.
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Oracle"
Zloxa
LSD

Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:

  • при создании темы давайте ей осмысленное название, описывающее суть проблемы
  • указывайте используемую версию базы, способ соединения и язык программирования
  • при ошибках обязательно приводите код ошибки и сообщение сервера
  • приводите код в котором возникла ошибка, по возможности дайте тестовый пример демонстрирующий ошибку
  • при вставке кода используйте соответсвующие теги: [code=sql] [/code] для подсветки SQL и PL/SQL кода, [code=java] [/code] - для Java, и т.д.

  • документация по Oracle: 9i, 10g, 11g
  • книги по Oracle можно поискать здесь
  • действия модераторов можно обсудить здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Oracle | Следующая тема »


 




[ Время генерации скрипта: 0.0515 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.