Встречается на собеседованиях • сегодня
Что такое шардирование в базах данных
Шардирование — это горизонтальное разделение данных в БД на части (шарды), распределённые по разным серверам. Каждый шард содержит подмножество данных, что позволяет масштабировать систему и распределять нагрузку.
Основные принципы:
- Данные делятся по ключу шардирования (например, user_id)
- Каждый шард независим и может находиться на отдельном сервере
- Запросы направляются только в нужный шард
Пример шардирования по диапазону:
java
// Определяем шард для пользователя
public Shard determineShard(long userId) {
if (userId < 1000) return shard1;
else if (userId < 2000) return shard2;
else return shard3;
}Плюсы:
- Горизонтальное масштабирование
- Повышение производительности
- Отказоустойчивость
Минусы:
- Сложность реализации JOIN между шардами
- Проблемы с транзакционностью
- Неравномерное распределение нагрузки (hot spots)

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы