Проєктування схем даних
Аналізуємо модель предметної області та будуємо нормалізовані або денормалізовані схеми залежно від профілю навантаження. Особлива увага до індексів: неправильний індекс на таблиці з 40 млн рядків коштує дорого.
Від проєктування схем до налаштування реплікації - конкретна робота з базами даних, без зайвих слів.
Аналізуємо модель предметної області та будуємо нормалізовані або денормалізовані схеми залежно від профілю навантаження. Особлива увага до індексів: неправильний індекс на таблиці з 40 млн рядків коштує дорого.
Розбираємо плани виконання запитів через EXPLAIN ANALYZE, знаходимо sequential scan там, де має бути index scan, переписуємо підзапити у JOIN або CTE. Типовий результат - скорочення часу виконання з 8 секунд до 200 мс на реальних даних.
Допомагаємо вибрати стратегію шардингу - за діапазоном, хешем або довільним ключем - і розрахувати кількість шардів під очікуване зростання. Розглядаємо Citus, Vitess, нативний шардинг MongoDB.
Конфігуруємо streaming replication, logical replication та failover-кластери. Перевіряємо RPO і RTO на реальних сценаріях відмови, а не лише в документації.
Будуємо процес міграцій із нульовим простоєм: online DDL, shadow tables, feature flags для поступового переходу. Інтегруємо Flyway або Liquibase в CI/CD пайплайн.
Проводимо технічний огляд поточної інфраструктури баз даних: конфігурація сервера, параметри пам'яті, налаштування connection pool. Готуємо звіт із пріоритетними рекомендаціями, розбитими за критичністю.
Опишіть, з чим зіткнулись - повільні запити, зростання обсягів, складна міграція. Відповімо протягом 1 робочого дня.