Нужны советы по облачному дизайну базы данных iOS - PullRequest
1 голос
/ 19 августа 2011

У меня есть приложение, которое использует базу данных SQLite.С появлением iCloud я пытаюсь найти хорошую архитектуру для синхронизации данных между устройствами.Допустим, мое приложение работает на iPhone, iPad и Mac.Как мне поддерживать актуальность данных в моей БД на всех устройствах?

Первой моей мыслью было, что я могу поместить базу данных в облако и отправлять транзакции.Но устройство может не всегда быть в сети, и пользователям нужен их контент в любое время, так что он не будет работать.Моя другая мысль состояла в том, чтобы продолжать использовать локальную базу данных, а затем, когда соединение установлено, отправлять кэшированные данные в центральную базу данных.Проблема в том, что у меня нет идеала, с чего начать.Как я узнаю, какие данные были отправлены, а не отправлены, какие данные нужно отправлять при установлении соединения и т. Д.

Так что это мой вопрос (нам не нужно вдаваться в специфику iCloud)Как использовать базу данных SQLite и iCloud (или любой другой носитель), как я могу синхронизировать данные между несколькими устройствами, но при этом самые последние данные хранятся локально на устройстве?

1 Ответ

3 голосов
/ 19 августа 2011

Возможно, вы захотите оформить заказ Couchbase Mobile .Это помогло бы с синхронизацией, которую вы ищете.

Если у вас есть значительные инвестиции в CoreData, вы можете захотеть написать свой собственный NSIncrementalStore для поддержки записи данных в и изхранилище значений ключей.

iCloud будет хорошим решением, только если ваши данные будут помещены в изолированную среду для конкретного пользователя.Если у вас есть несколько пользователей, которые хотят просматривать одни и те же данные, они не будут работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...