> On Aug 23, 2014, at 9:57 AM, Carl Hoefs <newsli...@autonomy.caltech.edu> 
> wrote:
> 
> However, specifically on iOS, I take it that SQLite is the *only* database 
> available

It's the only one built into the OS with a public API. But there are a lot of 
options if you're willing to build and link in your own database — Tokyo 
Cabinet, LevelDB, etc. Most database engines are very portable, because they 
don't use any OS facilities other than the filesystem and maybe threads. On the 
other hand, SQLite is attractive because the effective code size is zero, there 
are a number of Objective-C bindings, and it's proven extremely reliable over 
many years.

Realm has a nice API, but I am skeptical of it because the database engine 
itself (tightdb) is closed-source and there is no public information about it. 
(Realm itself is open source, but if you look closely at the code you find that 
it's a thin Objective-C wrapper over a C++ database engine that the build 
system downloads as a precompiled static library.) I would not feel comfortable 
shipping an app based on a database engine whose source isn't available, where 
there's no information about future support, and which has an unknown track 
record of stability. Worst-case scenario is they go out of business, tightdb 
stops working in some future OS version, and you're SOL.

(But take that with a grain of salt, because I work on a somewhat-competing 
[and open-source] database, Couchbase Lite, so I'm hardly unbiased.)

—Jens
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to