Продолжается подписка на наши издания! Вы не забыли подписаться?

Оптимизация производительности Oracle8i: мифы и реальность**

Гаджа Кришна Вайдианата, Quest Software Inc.
Oracle OpenWorld, San Francisco, декабрь 2001

Введение

Трудно поверить, что РСУБД Oracle существует свыше 22 лет… Поразительно, но это факт. За этот период она претерпела существенные изменения. Прошедшие годы (когда осуществлялась трансформация существенной части функциональных возможностей) доказали необходимость постоянно следить за изменениями системы. Каждый выпуск новой версии Oracle заставлял некоторых из нас чувствовать, что мы должны вновь изучать все концепции. Лично я с появлением каждой основной версии Oracle чувствовал себя администратором совершенно новой БД.

В мире, который требует от нас сопровождения хорошо спроектированных и имеющих хорошую производительность коммерческих приложений, работающих 24x7x“вечность”, существует насущная необходимость – не отставать от времени. Неспособность делать это оборачивается распространением старых и потенциально неподходящих в данном окружении технических решений. Все мифы и сказки, рассматриваемые в этой статье, связаны с вопросами оптимизации производительности. Так что вы возьмете из легенды о Лох-Нессе? Действительно ли Несси (так ее нежно называют) существует?

Что такое мифы и сказки?

Коротко говоря, миф – это что-то, чему можно верить, но это необязательно будет правдой. Обычно это что-то не имеет никакого научного обоснования и, следовательно, не имеет никакого смысла. Приведем несколько примеров:

Сказки – это совокупность историй, обычно связанных с мифами. Этот термин можно также использовать относительно сказаний или представлений, которые передаются из поколения в поколение. В мире оптимизации производительности Oracle причиной появления сказок является чья-то неспособность держаться в ногу со временем. Приведем несколько образчиков сказок:

Почему на нас это действует?

Одна из первичных причин воздействия на нас мифов и сказок естественна: мы сопротивляемся изменениям. Человеческая природа в том, чтобы противостоять изменениям, происходящим постоянно и неустанно; большинство людей принимает их с трудом. Сегодняшний мир предполагает парадоксальную точку зрения: изменения – наиболее постоянная вещь.

В плане настройки производительности мы склонны верить мифам, ибо практически у любого из нас есть ложное ощущение, что мы работаем с базой данных Oracle уже очень долго и успели узнать всё (определение понятия "долго" оставляю вам в качестве упражнения). Именно из-за этого я не могу принять слово “эксперт”. Я полагаю, что знание – обширный океан, а то, что мы знаем, вероятно, уместится в нескольких ведрах. Называть кого-то экспертом – ошибка, поскольку все познается в сравнении. Как практикующие АБД, которые занимаются настройкой, мы легко можем стать беспомощными жертвами мифов нашего мира, если только не поторопимся с проверкой тех смехотворных вещей, о которых говорят "эксперты". Дезинформация распространяется через многочисленные собрания групп пользователей, семинары, презентации и фолианты печатного материала, и количество её постоянно растет.

Как защититься от мифов и сказок?

Прежде всего, мы должны удостовериться, что любое техническое заявление можно проверить, используя разумные тесты или опубликованные научные данные. Слово "эксперта" само по себе не должно быть воспринято как Евангелие. Ещё более важно то, что мы должны анализировать предоставленные данные применительно к СУБД Oracle.

Во-вторых, мы должны воздержаться от настройки с помощью несоответствующих показателей, таких, как коэффициенты попадания в кэш, потому что они не помогают в нашей работе. Они не дают никакой информации, вскрывающей причины проблем с производительностью. Настройка Oracle с использованием коэффициентов попадания в кэш может быть сравнена с врачом, требующим анализ крови от каждого пациента и определяющим курс лечения исключительно по результатам анализа крови. Если вы обращаетесь к этому опытному врачу с переломом большой берцовой кости (с выходом фрагментов кости через поверхность кожи на вашей ноге), но он настаивает на взятии анализа крови, чтобы определить курс лечения, удачи вам и этому опытному врачу. Почему? Потому что этот врач собирается вам сообщить, что ваш анализ крови превосходный и у вас нет никаких проблем. Это – из-за недостаточного внимания к факту, что вы корчитесь от боли и говорите этому врачу, что ваша нога сломана. Очевидно, результаты анализа крови не прояснят источника вашей боли и даже не покажут, что у вас сломана кость. Оптимизация производительности систем Oracle с помощью коэффициентов попадания в кэш аналогична вышеупомянутой ситуации.

Мифы и факты

Началась новая эра оптимизации производительности Oracle. Некоторые называют это революцией в оптимизации производительности Oracle. Нужно освободиться от иллюзий и использовать только правильную и нужную информацию. Самое время выбрать путь к оптимизации производительности Oracle, руководствуясь здравым смыслом и рационализмом: смотреть на узкие места, которые “мучают” нашу систему. Мы должны перед назначением курса лечения определить первопричину болезни. Я пойду несколько дальше сказанного выше: вы ничего не потеряете, если решите никогда в жизни не проверять какие-либо бесславные коэффициенты попадания в кэш Oracle. Самое время предпринять попытку разоблачения некоторых нехороших мифов об оптимизации производительности...

Впервые на русском языке
опубликовано в Oracle Magazine/RE

Прочитать статью полностью вы можете в печатной версии журнала

Copyright © 1994-2016 ООО "К-Пресс"