Java Spring как найти элемент в БД или Коллекции супер быстро?

Java Spring как найти элемент в БД или Коллекции супер быстро?

Есть база данных в таблице которой хранится 2 000 000 записей. Назовем «таблица 1»

Есть другой список, который хранится в памяти, там тоже примерно 2 000 000 записей. Назовем «таблица 2»

У обоих таблиц могут быть одинаковые значения одного поля.

Нужно проверить есть ли в «таблице 1» значение из «таблицы 2» сейчас я попробовал это сделать двумя способами, но это пипец как долго, занимает примерно час, хотелось бы намного быстрее

Способ 1

List<OnlinerProduct> onlinerProducts = onlinerProductRepo.findAll();

boolean isTrue = onlinerProducts.stream().anyMatch((e) -> e.getOnlinerId() == onlinerModelId);

Способ 2

boolean isTrue = onlinerProductRepo.existsByOnlinerId(onlinerModelId);

p.s. Способ 1 работает намного быстрее чем способ 2 примерно в 10 раз, но нужен способ еще быстрее.


Ответы (0 шт):