All good points. Indeed by DB I only meant a SQLite DB that I create in the context of the app and stored in the phone. I should have clarified.
More details:
1. My app deals with patient data. Due to various HIPAA etc requirements there can't be storage on the cloud unless the patient decides to make a copy on his personal cloud
each user will end up storing around 10,000+ images over time (their device space might limit this)
On your comment about clearing app cache - my understanding is that clears local storage not SQLite. I also believe deleting cache does not remove persistent files stored inside app context. Not sure if the latter assumption is accurate. I'll have to try.
If the user decides not to back up images to iCloud or google cloud and they delete their app they will lost the data. It's their call
That being said what are the best storage strategies? There is a lot of index searching in my app and images are loaded only during rendering specific records. So I'd like to keep the app as snappy as possible.