Встречается на собеседованиях • сегодня
Какую решал самую сложную задачу в последнем проекте
Одна из самых сложных задач — оптимизация запросов к Cassandra при обработке больших объемов данных в реальном времени. Проблема: высокие latency при чтении/записи из-за неправильного выбора partition key и избыточных запросов.
Решение:
1. Переработали модель данных, выбрав более равномерно распределенный partition key.
2. Реализовали batch-обработку и кэширование через Caffeine.
3. Добавили асинхронные запросы с CompletableFuture.
Пример оптимизации:
```java
// Было: N+1 запросов
for (User user : users) {
session.execute("SELECT * FROM events WHERE user_id = ?", user.getId());
}
// Стало: 1 batch-запрос
List statements = users.stream()
.map(user -> QueryBuilder.selectFrom("events").all()
.whereColumn("user_id").isEqualTo(user.getId()))
.collect(Collectors.toList());
session.execute(BatchStatement.newInstance(StatementType.SELECT, statements));
```
Результат: снижение нагрузки на 70%, latency упала с 2s до 200ms.

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