• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Database Tuning Method & Technics
 

Database Tuning Method & Technics

on

  • 4,149 views

 

Statistics

Views

Total Views
4,149
Views on SlideShare
3,500
Embed Views
649

Actions

Likes
5
Downloads
60
Comments
0

6 Embeds 649

http://beskov.ru 631
http://www.beskov.ru 8
http://system-analysis.ru 3
http://www.slideshare.net 3
http://www.linkedin.com 3
http://hghltd.yandex.net 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Database Tuning Method & Technics Database Tuning Method & Technics Presentation Transcript

    • Оптимизация производительности БД Денис Бесков-Доронин UML2.ru
    • Оптимизация БД
    • Что оптимизировать?
    • Внешние свойства
      • Производительность
      • Масштабируемость
      • Надёжность
    • Внутренние свойства
      • Модифицируемость
    • Что такое производительность?
    • Для IT-специалистов
      • Время отклика
        • Response
      • Пропускная способность
        • Throughput
        • Bandwidth
    • Для бизнес-пользователей
      • Субъективное время реакции системы
    • Для владельца
      • Количество обрабатываемых бизнес-операций в единицу времени
      • Количество одновременно работающих пользователей
      • Степень удовлетворённости пользователей
    • Когда выполняется оптимизация?
    • Проактивно
      • При проектировании, построении системы
        • Make It Run, Make It Run, Make It Fast
        • Classic Engineering
          • Performance Planning
          • Capacity Planning
          • Reliability Planning
        • Кто: Системный архитектор
      • Плановая
        • Профилактика
        • Предупреждение
          • Мониторинг
        • Кто: Администрор БД / Системы
    • Реактивно
      • В экстренном порядке
        • "Найти и обезвредить"
        • Кто: Аналитик по производительности
    • Почему именно БД?
    • Архитектура запроса в системе
    • Обзор типовой архитектуры многослойной системы
      • Интерфейс, Внешние системы
      • Глобальная сеть
      • Сервисный слой (логика приложения)
      • Локальная сеть
      • Бизнес-логика
      • Логика доступа к данным
        • Структура запросов
      • Интерфейс доступа к БД
        • ODBC
        • Custom API
      • Модель данных
        • Логическая модель данных
        • Физическая модель данных
      • СУБД
        • Выделяемый пул
        • Режим работы
      • ОС
        • Процессы
      • Оборудование
        • Память
        • Диски
        • Процессор
        • Шина
    • Путь выполнения запроса
    • Принципы оптимизации
    • Сокращение пути выполнения запросов
      • DRI
        • Кэширование
    • Сокращение времени выполнения отдельной операции
      • Распараллеливание (Увеличение числа обработчиков)
    • Методики оптимизации
    • Наивный экстенсив
      • Процессор
      • Память
      • Диски
    • "Метод научного тыка"
      • Содержание
      • Проблема эффективности
        • Ищем где светло
        • Эффект от неважного до отрицательного
    • Метод R
      • Aligning IT and business
      • Цель Голдратта
        • "Слабое звено"
        • Теория ограничений
        • Сценарий оптимизации
          • Identify
          • Profile
          • ROI-based choosing
          • Tune
    • Техники оптимизации
    • Логика приложения
      • Кэширование
        • HTTP-кэширование
        • Кэширование шаблонов
        • Кэш объектов
        • Сетевое кэширование
      • "Ленивое" чтение
        • Минимум датасетов (.NET)
      • Плоские файлы
      • Prefetching
    • Уровень доступа к данным (DAL)
      • Стратегия доступа
      • Настройка SQL
    • Стратегия доступа
      • Индексированный доступ
      • ORM
      • Хранимые процедуры
      • Последовательный доступ
      • Представления
      • Применение образцов проектирования доступа
      • Временные таблицы
    • Настройка SQL
      • Кэширование запроса
      • Кэширование результатов запроса
      • Правильное использование SQL
      • Минимизация объёма данных
      • Политика блокировок
      • Использование специфических свойств СУБД
      • Использование оптимизатора
      • Пакетная обработка
      • Операторы
    • Кэширование запроса
      • Связанные переменные (Параметризация запросов)
        • + Безопасность!
        • Порядок выполнения SQL-запроса
          • Синтаксический разбор
          • Лексический разбор
          • Проверка прав доступа
          • Построение план выполнения
          • Доступ к данным
          • Извлечение
      • Минимизация динамического SQL
    • Правильное использование SQL
      • Операции над множествами VS циклы
    • Минимизация объёма данных
      • Минимизация проекции: Явное перечисление столбцов VS квантор *
      • Минимизация выборки (WHERE)
      • Кэширование результатов запроса
    • Политика блокировок
      • Ослабление политики
      • Частые фиксации транзакций
    • Использование специфических свойств СУБД
      • Oracle Hierarchical Query
      • TOP command
      • LIMIT
      • GROUP_CONCAT
    • Использование оптимизатора
      • Читаемая структура (ANSI JOINs)
      • Подсказки
      • Сбор статистики
    • Подсказки
      • Порядок обхода таблиц
        • Кардинальность и селективность каждой таблицы
      • Исключение индексов
      • Метод соединения
        • Вложенные циклы
          • Есть индексы
          • Результат необъёмен
        • Сортировка слиянием
    • Пакетная обработка
      • Отключение индексов, ключей и ограничений
      • Загрузка и удаление данных кусками, а не целиком
    • Операторы
      • UNION VS UNION ALL
    • Интерфейс доступа
      • Native interfaces against ODBC
    • Модель БД
      • Логическая модель БД
      • Физическая модель БД
    • Логическая модель БД
      • Денормализация
      • Истинный ERM VS ORM
      • Логическое секционирование
      • Политика удаления
    • Денормализация
      • Хранимые представления только для чтения
        • Materialized View
        • Агрегаты
        • Соединения
        • Производные атрибуты
      • Обновления
        • Автоматически
          • Триггер
          • Систематическая задача
          • MV Refresh
        • Явно
      • Замена кода типа булевыми признаками
    • Логическое секционирование
      • Вертикальное
      • Горизонтальное
        • По таблицам
        • По разным хостам (хэш)
    • Политика удаления
      • Замена мягкого удаления жёстким
    • Физическая модель БД
      • Индексы
        • Минимально необходимые
        • На внешние ключи
        • С высокой селективностью
        • Правильный порядок столбцов в составных индексах
        • Исключение дублей
      • Секционирование
        • По времени
        • По региону
        • По имени
    • Физическая модель БД 2
      • Минимизация накладных расходов
        • Удаление индексов и ограничений
        • Отключение / Выключение индексов и ограничений
      • Кластеризация
      • Распределение файлов данных и индексов
      • Первичные ключи
        • Замена составных ключей суррогатными
      • DB Engine
        • In-memory
      • Типы данных
        • Минимум длины
        • NOT NULL
    • Настройка СУБД
      • Распределение файлов БД и журналов
      • Буферы памяти
      • Ограничение пула соединений
      • Репликация
      • Просмотр системых представлений
    • Файловая система
      • RAID
      • SAN
      • Несколько дисков
    • Оборудование
      • Память
      • Процессор
    • Инструменты профилирования
    • Тесты
      • OLTP
        • TPC-C
        • TPC-E
      • DSS
        • TPC-H
      • Apps & WS
        • TPC-App
    • Open Source
      • JMeter
      • ...
    • Commercial
      • Rational Robot
      • Compuware QALoad
      • HP (Mercury) LoadRunner
    • Рекомендуемая литература