Я разрабатываю приложение для iOS и решил разделить требования к постоянству на три отдельные базы данных SQL.
- Статические данные - только для чтения, но загруженные из внешних источников
- Данные запроса клиента - данные, которые клиент ставит в очередь для отправки на внешний источник
- Метаданные приложения. Содержит метаданные о состоянии двух других БД и приложения в целом. Это может быть, помимо прочего, информация о версии таблицы / приложения, время, когда приложение последний раз общалось с внешним источником.
Идея, лежащая в основе этого разделения, заключается в том, что первая БД эффективно заменяется, вторая - транзакционный источник, а метаинформация не должна расти.
Есть ли какие-либо предостережения в отношении этого подхода, конечно, я понимаю, что не могу присоединиться к каждому, хотя я не собираюсь.