У меня есть две сущности: Project
и Production
Каждый Project
имеет много Productions
. Таким образом, отношение проекта toMany
Я получаю все Projects
и все Productions
с двумя запросами по сети. Я сохраняю каждый проект в CoreData
. Это около 100 тысяч проектов, и у меня уходит около 40 секунд, вот и все.
Получение около 100 тыс. Продукций и сохранение в CoreData занимают у меня 50 секунд. Тоже норм. Но я еще не установил отношения.
Итак, я устанавливаю цикл для всех проектов, которые были извлечены с помощью NSFetchRequest
, для установки отношения при подготовке производства.
for project in Project.getAll() {
project.addToProductions(Produciton.getProductionById(project.producionId))
}
Этот цикл занимает много времени и ресурсов процессора. что-то около 10 минут с получением CPU Over Budget x2
при профилировании.
Если есть способ установить отношения без получения продукции, это было бы полезно, или у меня есть переключатель CoreData
на SQLite
или Realm
?