Анна Вичугова

Почему БД — самое узкое место в вашей системе: что учитывать при проектировании

Подробнее о спикере

— Работает в ИТ с 2009 года как аналитик, разработчик, проектировщик ИС
— Аналитик и техписатель в Школе Больших Данных
— Основатель Школы прикладного бизнес-анализа и проектирования ИС babok-school
— Автор и преподаватель ИТ-курсов
— Кандидат технических наук


Подробное описание доклада

Почему БД — самое узкое место в вашей системе: что учитывать при проектировании.

Факторы, которые ограничивают производительность ИТ-решения и как они влияют на проектирование:
1. Роль базы данных в архитектуре системы
— БД как центральный компонент для хранения и обработки данных
— Влияние производительности БД на общую эффективность системы

2. Модели хранения данных и инструменты обработки
— Реляционные и нереляционные БД
— Первичная и вторичные модели хранения данных в БД
— Влияние структуры хранения данных на производительность
— Индексация для ускорения поиска и сортировки
— Табличные движки и оптимизаторы запросов
— Выполнение запросов к данным

3. Транзакции и параллелизм
— Понятие транзакции, ACID и BASE подходы
— Нарушения изоляции транзакций
— Обеспечение целостности данных при одновременном доступе
— Минимизация конфликтов блокировок для повышения пропускной способности
— Конкурентный доступ при одновременных операциях
— Органиченное количество подключений и пулы соединений

4. Внутреннее и внешнее кэширование
— Виды внутренних кэшей (буферный кэш, кэш запросов, кэш планов выполнения, кэш метаданных) и стратегии управления ими
— Внешнее кэширование с помощью key-value хранилищ

5. Аппаратные ресурсы и инфраструктура
— Роль серверных мощностей, памяти и дискового пространства
— Влияние сетевой инфраструктуры на быстродействие БД

6. Влияние внутренних операций на производительность
— Вычисляемые поля, включая генерацию последовательностей, GUID/UUID, хэширование, шифрование
— Триггеры и хранимые функции/процедуры
— Очистка, дедубликация

7. Архитектурные приемы повышения производительности БД
— Планирование объема данных и прогнозирование роста
— Репликация и кластеризация, влияние топологии кластера на скорость работы, балансировка нагрузки между несколькими серверами
— Масштабирование при увеличении нагрузки: шардирование, CQRS

Секция: Инженерия данных