Що таке масштабування бази даних?
Масштабування бази даних - це процес збільшення її продуктивності й пропускної здатності, коли навантаження (обсяг даних, кількість запитів, користувачів) зростає.
Є два основних підходи:
Вертикальне масштабування (Vertical scaling / Scale-up)
Збільшується потужність одного сервера - додають більше CPU, оперативної пам'яті, SSD-диск.
- Плюси: просто реалізувати; не потребує зміни архітектури.
- Мінуси: є фізична межа, дорого, одна точка відмови.
Приклад: апгрейд сервера PostgreSQL з 16 ГБ RAM до 64 ГБ.
Горизонтальне масштабування (Horizontal scaling / Scale-out)
Навантаження розподіляється між кількома серверами (нодами).
- Плюси: гнучко, стійко до відмов, можна додавати потужності в міру зростання.
- Мінуси: складніше в налаштуванні й синхронізації даних.
Приклади рішень:
- Шардування (Sharding) - база ділиться на частини за користувачами, регіонами тощо.
- Реплікація (Replication) - дані копіюються на кілька серверів: один - основний, решта - для читання.
- Кешування (Caching) - частина запитів обслуговується з пам'яті (Redis, Memcached).
Висновок: масштабування - це спосіб зробити базу швидшою й стійкішою до навантаження, обираючи між «додати потужності» й «додати серверів».
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.