Кэшировать объекты Realm вместо выполнения большого количества запросов

Вот класс, который я буду использовать и много раз буду запрашивать в цикле.

public class ManufacturerEntity extends RealmObject {
    private ManufacturerEntity parent;
}

Я загружаю из постраничного веб-сервиса (WS), чтобы получить информацию обо всех известных производителях, у меня более 5 тыс., А максимальное количество элементов WS на страницу равно 100, поэтому я сделаю 50 вызовов на этот WS.

Для каждого вызова я буду повторять каждый из 100 производителей, чтобы отобразить их как объекты Realm. Вопрос в том, чтобы получить наилучшие результаты, нужно ли кэшировать все ManufacturerEntity Я получаю запрос Realm, чтобы избежать повторного запроса позже, когда столкнусь с этим производителем?

Вот пример:

List<Manufacturer> backendManufacturers = call();
for (Manufacturer manufacturer : backendManufacturers) {
    UUID parentId = manufacturer.getParent().getId();
    //Realm query every time 
    //or call a method that'll cache the 
    //ManufacturerEntity with id = parentId ?
    ManufacturerEntity parentEntity = ??;
    ManufacturerEntity manufacturerEntity = map(manufacturer, parentEntity);
    //save manufacturerEntity (and cache it) ?
}

Я знаю, что Realm действительно быстрый (поэтому я перешел на него), но быстрее ли он? HashMap (или как)?

0 ответов

Другие вопросы по тегам