Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Apple powers iCloud Core Data with SQLite. This way it uses the same DB engine locally on your Mac and iPhone, and the server backend in their data centers.

I don't know if they've swapped the backend, or just use it as-is. SQLite can scale vastly if you use it for file IO and do sharding/replication on top of it as a separate concern. I've done ad-hoc (extremely crude) versions of that in some apps.



Isn't each cloud CoreData store just for a single user, so high concurrency isn't needed?


Yes, we have natural sharding by user. However Core Data also can create shares which multiple users can access. I don't think this typically causes high concurrency, it's more like a Dropbox file share or a Google docs file share for a few users at a time.

This definitely helped them make the choice to run SQLite on the server.

But I still think it's super cool. We're talking 1.8 billion devices with data stored as SQLite files in the cloud.


I would assume single account but multiple devices, so you could have multiple connections syncing at once.


Doing that serially wouldn't be particularly slow. Most likely 4 devices at most.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: