Это видео недоступно.
Сожалеем об этом.

Проактивная оптимизация производительности БД Oracle / Александр Макаров (РНКО (ГК ЦФТ))

Поделиться
HTML-код
  • Опубликовано: 13 янв 2019
  • Приглашаем на конференцию Saint HighLoad++ 2024, которая пройдет 24 и 25 июня в Санкт-Петербурге!
    Программа, подробности и билеты по ссылке: vk.cc/cuyIqx
    --------
    --------
    HighLoad++ Siberia 2018
    Тезисы и презентация:
    www.highload.ru...
    В докладе предлагается и демонстрируется простой метод выявления узких мест в работе серверной части ПО на примере БД Oracle. Применение данного метода на регулярной основе 2 раза в год позволило значительно сократить (примерно раз в 10) количество инцидентов производительности на боевой БД с ЦФТ-Ритейл банк, на которую новый функционал поставляется большими порциями каждые 2 недели. Под инцидентами производительности здесь понимается ситуация сильной деградации производительности прикладного кода (его серверной части, расположенной в БД), который в обычных условиях работает нормально.

    --------
    Нашли ошибку в видео? Пишите нам на support@ontico.ru

Комментарии • 7

  • @GrayMagellan
    @GrayMagellan 2 года назад

    Весь доклад посмотрел с огромным интересом на одном дыхании. И понял, что в конторе тоже надо ставить EM

  • @GrayMagellan
    @GrayMagellan 2 года назад +1

    Отличный доклад! Но на мой взгляд, последний пример безумно яркий и глубокий по смыслу, но автор доклада этот смысл не раскрыл, ограничившись фразой "счастливы все" 😔. А ведь что, по сути, было сделано? А было сделано следующее - фаза вычислений (работа с null) была перемещена из одного места (запроса) в другое место (индекс). За счет чего был получен выигрыш во времени выполнения запроса? За счет того, что в первом (требуемом) месте мы теперь данные не вычисляем, а получаем из памяти. При этом получение их из памяти (в данном конкретном случае) занимает меньше времени, чем вычисление. Это и является результатом данной оптимизации. Об этом лектору намекал последний вопрос. Я хочу напомнить лектору теорию, которая лежит в основе любой информационной системы, но мало кто о ней задумывается. А теория очень проста! Работа любой информационной системы в общем случае представляет собой путь из пункта А (постановка задачи) в пункт Б (получение результата), который состоит из множества последовательно соединенных этапов (цепь событий). Работа системы на каждом этапе этой цепи занимает определенное время, и общее время работы системы на пути из А в Б равно сумме времён работы системы на каждом этапе этого пути. Это первый постулат. Второй постулат состоит в том, что в любой информационной системе любые новые данные могут быть получены всего двумя способами - 1) вычислены АЛУ процессора; 2) прочтены из памяти. При этом в каждой конкретной ситуации время, требуемое для первого или второго способа, будет различаться. Понятное дело, что когда время на получение результата обоими способами одинаково, нам делать нечего - может получить новые данные любым способом, не задумываясь о них. Работа любого IT специалиста в том и состоит, чтобы на каждом конкретном этапе пути системы из п. А в п. Б оценивать время работы этого этапа системы обеими способами, а затем выбрать и использовать метод с наименьшим временем. Вот так, уменьшая время работы системы на каждом этапе, мы и уменьшаем общее время работы (оптимизируем) системы. Кто-то после осознания сути работы IT специалиста может бросить эту работу, потому что она покажется ему скучной. Но настоящий профессионал будет испытывать кайф от сокращения всех этапов, достигая тем самым сокращения всего пути :).

  • @PFedot
    @PFedot 5 лет назад

    Ребят, кто подскажет, где можно почитать побольше про функциональные индексы 32:00?

    • @AC4TEST
      @AC4TEST 5 лет назад

      в документации, My Oracle Support, Tom Kyte, просто поиск. что-то конкретное интересует?

  • @AC4TEST
    @AC4TEST 5 лет назад +1

    соори, но я не дослушал.

  • @Macter_tai
    @Macter_tai 6 лет назад

    Что за "птичий язык" ?!