简体   繁体   中英

Core Data vs Sqlite and performance

I am wondering if anyone has any real world numbers on performance differences between an old sqlite application which has been converted to Core Data in the 3.0 SDK.

I suspect that under the hood Core Data is just using sqlite anyways and that it add's a bit of overhead for the cost of convenience, but i thought i would ask anyways.

Core Data is heavily optimized with regards to caching, lazy-loading and memory management.

If you use it (with the SQLite store type), especially in conjunction with NSFetchedResultsController, you should get better performance than you could get with SQLite on your own.

Apple has worked hard to make Core Data perform well on the iPhone. My application switched from SQLite w/ FMDB to Core Data and it is now faster and more stable with less code.

Core Data can use sqllite - it is up to the developer to configure - so your suspect correctly. On the Phone I would suggest sqllite is the best idea.

I think one of the biggest benefits you can gain by using Core Data is the lazy loading of data and the faulting to save on memory. So you need to also think about things like this when you are considering performance as the amount of free memory you have will also impact performance.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM