I'm about to start working on my first iOS app. However there is one question I can't answer without experience. Keep in mind I prefer this app to be able to sync data to multiple devices using iCloud or some service which I don't have to maintain. Use one database or individual files? One database specific questions: Will the entire database load in ram? SQLLite directly or CoreData? The only downside I see with individual files is file management. I mean I can essentially hide actual file management aspects from the user and make it look like a database, but my application needs to keep track of these files. I could easily see thousands of files being needed.