powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Большие операции чтения с диска
20 сообщений из 20, страница 1 из 1
Большие операции чтения с диска
    #39625468
AnTe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ситуация печальная. Есть корпоративная система, сейчас с нею работают около 400 человек. Работали. Потому что сегодня утром она внезапно впала в кому.

Ясно, что контролируемых данных очень много, попытаюсь коротко описать хоть что-то.

Есть две машины, работают на виртуальных машинах VmWare
- сервер БД Oracle 11.2.0.4
- на сервере приложений Apache TomCat в составе Spring Boot 1.5.4
С базой данных сервер приложений работает через стандартный пул Apache Tomcat.

Всё работало "как часы" и при гораздо больших нагрузках уже не менее полугода, но:
- пару месяцев назад была подобная ситуация, но пару часов вдруг само собой всё нормализовалось.
- через две недели ситуация повторилась, и на этот раз система была в коме около шести часов.
- сегодня её не удаётся завести вовсе

Симптомы следующие:
- запросы выполняются на порядок дольше
- мониторинг на гипервизоре и внутри самой VM показывает "высокие операции чтения" с диска (скорость чтения возрастает на 1-2 порядка от обычного).
- по данным мониторинга на стороне гипервизора проблемы ввода вывода в обоих случаях начались ночью – при минимально нагруженной системе (через некоторое время после завершения операций бэкапа ВМ а затем базы)

Возможно, проблемы в среде виртуализации.

Но есть ещё момент. На БД много не оптимизировано - многие запросы можно было бы улучшить, в том числе не проиндексированы некоторые базовые таблицы: "забивали" на это, т.к. в ближайших планах был перевод запросов к Elastic Search.

Может ли БД так резко менять своё поведение только по причине неоптимизированных запросов?

Как подобные ситуации отлавливать, где можно узнать о произошедших изменениях?
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625480
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnTe- мониторинг на гипервизоре и внутри самой VM показывает "высокие операции чтения" с диска
(скорость чтения возрастает на 1-2 порядка от обычного).

Какие процессы и какие файлы читают?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625481
982183
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может всё же проблема с носителями?
RAID стоит? Какой?

А разработчик далеко?
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625526
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnTeСитуация печальная. Есть корпоративная система, сейчас с нею работают около 400 человек. Работали. Потому что сегодня утром она внезапно впала в кому.

Ясно, что контролируемых данных очень много, попытаюсь коротко описать хоть что-то.

Есть две машины, работают на виртуальных машинах VmWare
- сервер БД Oracle 11.2.0.4
- на сервере приложений Apache TomCat в составе Spring Boot 1.5.4
С базой данных сервер приложений работает через стандартный пул Apache Tomcat.

Всё работало "как часы" и при гораздо больших нагрузках уже не менее полугода, но:
- пару месяцев назад была подобная ситуация, но пару часов вдруг само собой всё нормализовалось.
- через две недели ситуация повторилась, и на этот раз система была в коме около шести часов.
- сегодня её не удаётся завести вовсе

Симптомы следующие:
- запросы выполняются на порядок дольше
- мониторинг на гипервизоре и внутри самой VM показывает "высокие операции чтения" с диска (скорость чтения возрастает на 1-2 порядка от обычного).
- по данным мониторинга на стороне гипервизора проблемы ввода вывода в обоих случаях начались ночью – при минимально нагруженной системе (через некоторое время после завершения операций бэкапа ВМ а затем базы)

Возможно, проблемы в среде виртуализации.

Но есть ещё момент. На БД много не оптимизировано - многие запросы можно было бы улучшить, в том числе не проиндексированы некоторые базовые таблицы: "забивали" на это, т.к. в ближайших планах был перевод запросов к Elastic Search.

Может ли БД так резко менять своё поведение только по причине неоптимизированных запросов?

Как подобные ситуации отлавливать, где можно узнать о произошедших изменениях?

при болезни, для диагностики, обычно начинают с осмотра и анализов

Причиной может быть что угодно:
кривой запрос воткнутый разработчиком
протухшая батарейки рейда
слетевшая статистика БД, в результате которой поплыли планы
увеличилось количества запросов, естественно от увеличившегося количества клиентов, или DOS атаки, в результате которой банально кончилась память и начался swapping системы
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625529
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это далеко не все причины, которые могли привести к такому поведению

начните с описания системы, версии ОС и ПО и так далее
результаты мониторинга (например /var/log/sa файлы)
отчеты awr или statspack
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625566
Фотография AlexFF__|
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim Lejninпри болезни, для диагностики, обычно начинают с осмотра и анализов

Вот отсюда все проблемы...
Начинать всегда надо с поиска специалиста ;)
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625733
Мутаген
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
http://www.oracle.com/technetwork/database/manageability/dba-best-practices-ow08-129450.pdf

Слайд 10 "Click on the Big Stuff", так будет понятнее.

я голосую за serial direct path, но без statspack/awr ничего утверждать нельзя. Ну, кроме батарейки на рейде. Та точно на запрашиваемый базой объём чтения не влияет.
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625824
AnTe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте! Спасибо всем за ответы с вариантами. Уточню немного по своему вопросу.

Конечно же, мы контролируем много параметров, просто не понятно, что же сюда можно написать. Nagios для VM, сейчас переключили на stand by - дубликат, который находится в нашей зоне контроля, т.е. свой гипервизор и хранилка своя

Система заработала, но тормоза неимоверные. Поэтому и возникло подозрение, что раз по факту поменяли виртуальную среду и всё особо не наладилось - дело всё-таки в неоптимизированных запросах (отсутствие индексов).

Как ещё подсказали нам немного более опытные в оракле коллеги, "взглядом со стороны" - на пальцах, в оракле свой "искусственный интеллект", и предположение такое, что в какой-то момент оракл поменял план запросов, потому что посчитал, что так оптимальнее.

Как "вернуть всё взад, отключив ИИ" - они не в курсе. Вообще, всё это лишь предположение.

Запросы неоптимальные у нас есть, как водится, оптимизация откладывалась на потом (по иронии судьбы как раз за два дня до краха не developer-версии БД начата реорганизация таблиц для подготовки к индексации). В production- версии есть таблицы с сотнями тысяч элементов, к которым обращается запрос, и они не проиндексированы. Принято решение провести оптимизацию до конца. Это ещё как раз до конца недели, печально то, что система стоит, она нужна ежедневно, и сейчас боле трёхсот человек конкретно попали.

Смущает неожиданность перехода БД в такое состояние. Нагрузки на процы и память нет и не было, "объёмы чтения" - были на порядок меньше. Прирост в базе данных ежедневный небольшой (это документы, поручения по ним). Что произошло и как можно вернуть всё взад хотя бы на два дня? Сейчас ещё докидаем памяти в два раза больше, но память и так не нагружена.

Может, ещё какие варианты?
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625888
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnTe В production- версии есть таблицы с сотнями тысяч элементов, к которым обращается запрос, и они не проиндексированы.

имхо
с "сотнями тысяч" оракля и "без индексов" должен справлятся

гляньте какой запрос более всего тормозит, и "проиндексируйте" таблички, хуже на 100тысяч не станет
.....
stax
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625899
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim Lejninанализовавтор привел результаты анализов - "скорость чтения возрастает...".
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39625917
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnTeЗдравствуйте! Спасибо всем за ответы с вариантами. Уточню немного по своему вопросу.

Конечно же, мы контролируем много параметров, просто не понятно, что же сюда можно написать. Nagios для VM, сейчас переключили на stand by - дубликат, который находится в нашей зоне контроля, т.е. свой гипервизор и хранилка своя

Система заработала, но тормоза неимоверные. Поэтому и возникло подозрение, что раз по факту поменяли виртуальную среду и всё особо не наладилось - дело всё-таки в неоптимизированных запросах (отсутствие индексов).

Как ещё подсказали нам немного более опытные в оракле коллеги, "взглядом со стороны" - на пальцах, в оракле свой "искусственный интеллект", и предположение такое, что в какой-то момент оракл поменял план запросов, потому что посчитал, что так оптимальнее.

Как "вернуть всё взад, отключив ИИ" - они не в курсе. Вообще, всё это лишь предположение.

Запросы неоптимальные у нас есть, как водится, оптимизация откладывалась на потом (по иронии судьбы как раз за два дня до краха не developer-версии БД начата реорганизация таблиц для подготовки к индексации). В production- версии есть таблицы с сотнями тысяч элементов, к которым обращается запрос, и они не проиндексированы. Принято решение провести оптимизацию до конца. Это ещё как раз до конца недели, печально то, что система стоит, она нужна ежедневно, и сейчас боле трёхсот человек конкретно попали.

Смущает неожиданность перехода БД в такое состояние. Нагрузки на процы и память нет и не было, "объёмы чтения" - были на порядок меньше. Прирост в базе данных ежедневный небольшой (это документы, поручения по ним). Что произошло и как можно вернуть всё взад хотя бы на два дня? Сейчас ещё докидаем памяти в два раза больше, но память и так не нагружена.

Может, ещё какие варианты?

1) Системная статистика, для unix систем
установи sysstat пакет
начнет собираться в фоновом режиме sar, нагрузка минимальная
достаточно прикрепить /var/log/sa/saDD файл, где DD - интересующее число месяца
и можно будет посмотреть большое количество параметров нагрузки системы
это удобнее чем разбираться в обобщенных портянках систем мониторинга
Код: plsql
1.
man sar



2) Статистика базы
Если куплен diagnostic pack и у Вас Enterprise Edition, то сбор awr отечета
иначе statspack
Код: plsql
1.
$ORACLE_HOME/rdbms/admin/spdoc.txt



устанавливаете
создаете несколько снимков статистики в момент максимальной нагрузки
получаете отчет, с которым можно работать

3) дополнительно приложить alert.log базы

Без этого, гадание на кофейной гуще
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39626175
SQL*Plus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnTeЕсть две машины, работают на виртуальных машинах VmWare
- сервер БД Oracle 11.2.0.4
...BTW
Компания Oracle не признает VmWare средой,
обеспечивающей жесткое выделение ресурсов (hard partitioning).
Это исключает ограниченное лицензирование Oracle Database.
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39628222
AnTe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прошу прощения, забыл отписаться.

Тему скинул нашим ребятам, многое было очень полезно.

Оптимизация (внезапно был найден способ проиндексировать, "временно") - вернула системе работоспособность.

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

Всем спасибо!
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39632270
AnTe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Печально, но история имеет продолжение. Как написал выше, некоторые таблицы были проиндексированы и это разгрузило базу данных.

Однако, по всей видимости проблема была далеко не только в отсутствии индексов. А именно в "самоуправстве"(??) БД Oracle


Сегодня с утра наблюдали ситуацию, когда БД Oracle на нашей БД самопроизвольно перестал использовать индексы, читая данные напрямую с диска . Это было видно в enterprise-менеджере

Была перезапущена БД Oracle в надежде, что правильная работа служб (в том числе Oracle SQL Advisor) восстановится. Результат:
1. С виду ничего не изменилось.
2. Кроме того, после перезагрузки в энтерпрайз-менеджере перестали отображаться планы запросов (!!).

Выходит так, что по неизвестной пока причине эта ситуация повторяется с периодичностью по средам (смешно, ага) раз в 2 недели, и, возможно, именно это пока для нас непредсказуемое поведение Oracle и являлось одной из главных причин всех предыдущих сбоев
Переключили на standby клон БД в собственной среде, и почему-то это позволило восстановить работоспособность системы: после непродолжительного (порядка 5 минут) чтения данных со скоростью до 400 Mбит в секунду, при обычной нагрузке на сервер прежняя работоспособность БД Oracle была восстановлена. Планы запросов стали отображаться.

В настоящее время в спешном порядке разбираемся с настройками Oracle, но пока не видно на горизонте решения.....
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39632300
MaximaXXL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnTe,

А Вы Awr report читали, если по средам, может у Вас бекап настроен на среду.
Посмотрите кто грузит базу
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39632305
Фотография mefman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnTeБыла перезапущена БД Oracle в надежде, что

А хост перезагружали?
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39632569
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnTeповторяется с периодичностью по средам (смешно, ага) раз в 2 недели
Ну и смотрите, какие maintaince задачи настроены с таким расписанием, от сбора статистики в базе, до скрипта на гипервизоре, бэкапящего виртуалки.
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39632910
AnTe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да конечно, все планировщики пересмотрели в первую очередь. Ни на гипервизоре, ни в оракле ничего не находим.
Процедуры бекапов и т.п. проводятся каждую ночь. проблемы же начинаются каждую вторую среду утром:)
Может, конечно, плохо ищем.

И дело в том, что у нас на заводе много (купленных) систем работает на oracle, администрируют базы много лет и ничего подобного не случалось. Есть и самописные системы, например, АСУ управления производством, там двузвенка т.о. запросы нативные и хинтуются вручную.

в чём отличия? у нас самописная, но трёхзвенка :)

AnTeЕсть две машины, работают на виртуальных машинах VmWare
- сервер БД Oracle 11.2.0.4
- на сервере приложений Apache TomCat в составе Spring Boot 1.5.4
С базой данных сервер приложений работает через стандартный пул Apache Tomcat.


к Oracle запросы генерирует Hibernate. Основные самые "тяжёлые" запросы написаны вручную, но большинство - сгенерированные hibernate, без хинтов, с надеждой, что Adviser всё правильно разрулит.

Что-то в этой связке не так...
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39633524
AnTe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Думаем, что виновник - оптимизатор. Возможно, собирал статистику по ночам, когда нагрузки нет.

https://oracle-patches.ru/блоги/77-настройка-производительности/3078-ручной-и-автоматический-сбор-статистики-оптимизатора-в-базе-данных-oracle

Настраиваем....
...
Рейтинг: 0 / 0
Большие операции чтения с диска
    #39633573
Фотография AlexFF__|
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AnTeДумаем, что виновник - оптимизатор. Возможно, собирал статистику по ночам, когда нагрузки нет.

https://oracle-patches.ru/блоги/77-настройка-производительности/3078-ручной-и-автоматический-сбор-статистики-оптимизатора-в-базе-данных-oracle

Настраиваем....
Какой же бред =(
Найдите себе уже спеца, пока базу окончательно не доломали.
Кого-то, кто хотя бы умеет планы читать и знает разницу между объектной и системной статистикой.
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Большие операции чтения с диска
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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