Встречается на собеседованиях • сегодня
Какую задачу решает Sharding
Sharding — это горизонтальное разделение данных в БД, когда таблица разбивается на части (шарды), распределённые по разным серверам. Решает проблемы масштабируемости и производительности при больших объёмах данных, снижая нагрузку на отдельные узлы.
Пример:
java
// Упрощённая логика выбора шарда по userId
public String getShardConnectionUrl(long userId) {
int shardNumber = (int) (userId % 4); // 4 шарда
return "jdbc:mysql://shard" + shardNumber + ".db/app";
}Плюсы:
- Распределение нагрузки
- Возможность географического размещения
- Увеличение отказоустойчивости
Минусы:
- Сложность JOIN-запросов между шардами
- Транзакции跨шардов требуют 2PC (two-phase commit)
- Ребалансировка при добавлении узлов

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