Введение
Мой проект iOS поставляется с постоянным хранилищем Core Data весом около 160 МБ в формате SQLite. Там есть тонна сгруппированной информации, в которой пользователи должны иметь возможность отмечать избранные. Для этого мне нужна (по крайней мере часть) база данных для возможности записи. Но, конечно, постоянные магазины, которые поставляются в комплекте приложений, разработаны только для чтения.
Если вы хотите, чтобы в хранилище были возможности чтения и записи, вы должны скопировать его, например. папке документов приложения. Я не хочу этого делать, потому что тогда приложение будет в два раза больше, тогда как основная часть этой базы данных будет доступна только для чтения. Это будет пустой тратой ресурсов.
Несколько постоянных хранилищ для NSPersistentStoreCoordinator
Вот почему я думал использовать два постоянных магазина. Первая из них будет большой в комплекте, а вторая может быть маленькой в папке документов, сохраняя специальные "любимые" сущности с отношениями к большому хранилищу.
Я знаю, что в этом отношении возможно что-то, но я не могу найти специфику. Следует ли использовать только несколько магазинов, если у вас также есть несколько объектных моделей? Можно ли "распределить" одну объектную модель в двух постоянных хранилищах? При просмотре документов Core Data Programming я не могу найти никакой реальной информации о том, как это установить. Кроме того, книга Маркуса Зарра, похоже, не вникает в эту тему:
В NSPersistentStoreCoordinator можно добавить несколько NSPersistentStore, которые могут быть полезны при работе с данными, разделенными на несколько файлов. Однако в нашем примере у нас есть один файл. (Маркус Зарра: "Основные данные - API Apple для сохранения данных в Mac OS X" страница 71)
Вопрос
Кто мог бы рассказать мне, возможно ли, что я думаю, с Core Data и несколькими постоянными магазинами? И не могли бы вы дать подсказку о том, как достичь этого? Онлайн/автономные ресурсы, которые занимаются этой темой, очень ценятся.