Встречается на собеседованиях • сегодня

Какие знаешь способы оптимизации чтения БД

1. **Индексы** – ускоряют поиск по часто запрашиваемым полям. ```java @Entity @Table(indexes = @Index(columnList = "email")) public class User { ... } ``` 2. **Пейджинг** – разбивка данных на страницы (например, `Pageable` в Spring Data). ```java Page users = repository.findAll(PageRequest.of(0, 20)); ``` 3. **Ленивая загрузка** (`FetchType.LAZY`) – загружает связанные сущности только при обращении. 4. **Кэширование** (Hibernate, Redis) – уменьшает повторные запросы к БД. 5. **Проекции (DTO)** – выборка только нужных полей вместо целых сущностей. 6. **Batch-запросы** – группировка операций (например, `JPA` с `hibernate.jdbc.batch_size`). 7. **Оптимизация JOIN** – избегание `N+1` проблемы через `@EntityGraph` или `FETCH JOIN`. 8. **Партиционирование** – разделение таблиц по логике (например, по датам). 9. **Read Replica** – чтение с реплик БД для распределения нагрузки. 10. **Materialized Views** – предвычисляемые представления для сложных запросов.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы