Встречается на собеседованиях • сегодня
Когда нужно использовать Sharding
Sharding применяется, когда данные не помещаются на одной машине и требуется горизонтальное масштабирование. Основные сценарии:
- Большие объемы данных – таблицы, которые неэффективно хранить на одном сервере (например, ленты соцсетей, логи транзакций).
- Высокая нагрузка на запись – если INSERT/UPDATE создают bottleneck в single-node БД.
- Геораспределение – данные физически ближе к пользователям (например, шардинг по регионам).
Пример с Hibernate:
java
@ShardingStrategy(
shardKey = "userId",
shardResolver = UserShardResolver.class
)
@Entity
public class UserProfile {
@Id
private Long userId;
private String data;
}Минусы: сложность JOIN, транзакций и ребалансировки. Альтернативы – репликация или NoSQL решения.

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