Centralised remote DB where clients fetch updates

Hi,

I'm currently planning an app that would consist of clients (iOS devices) having a local database of books. This database would be kept in sync with a "master" database and so, whenever possible, would update itself with the changes made on the master database.

My goal with this approach is to allow offline access to the data, and update the local database with the most recent books as soon as there is a network connection.


I have searched and some posts in these forums as well as Swift.org forums regarding the use of CloudKit or a combination of Core Data and remote SQL databases such as MySQL, MSSQL or mariaDB. however, it seems that, according to most of the comments, Core Data + SQL is not a robust "coupling" of technologies, not to mention the limitations (from what i've gathered) of CloudKit ( public data, dependent on iCloud storage availability and associated subscriptions)


There are a ton of apps that surely use a "client-server" method and provide offline acces to the content stored locally.


Are there any books / articles or suggestions that you might have?


Thanks a lot for taking the time to read this.


Regards,

Renato Silva