Just saw this on the Media Browser community blog and am getting ready to test this out for myself!
I don’t know how excited I am going to get in seeing Media Browser going to a full SQL backend, but I think this is a very good initial step. Using SQLite for cached metadata is a terrific idea and I bet that it can even be hacked up to work over the network using my RAMDisk tricks (Sam states there is no sharing with this, so file locking could be the issue).
I’ll be sure to let you know how this works!
Update:
It appears that that the new database implementation is caching only metadata and images. The autoPlaylists, items and playstate folders are retained, so you will not lose your “watched” statuses.
Also, your MediaBrowserXml.config (main config file) will be overwritten, so if you intend on compiling this and running it, back up your config file first (if you want to revert back to it). The config file is the only data that I have noticed to have lost, which is no big deal to me. However, I also renamed my entire Cache file before starting, so I am not sure what happens to the other folders apart from what I mentioned above. I copied those three folders to a new Cache folder before running Media Browser and populating the cache.db file.
Update 2:
The metadata and image caching is now complete (at least everything that I have stored locally is…I don’t store backdrops with TV series since the automated rotation of them never seemed to work right for me when they were) and I must say that I can tell a tremendous positive difference in browsing my various media folders in comparison to the previous directory caching method. Images load almost instantly and it just “feels” much smoother.
I have somewhere around 2500 movies and I imagine anywhere from 10,000-15,000 individual TV episodes and my cache.db file stands, right now, at 17.5MB. I’m not real certain what exactly is being cached, but I plan on cracking this db file open in the next bit to see what it contains.
For those still wondering, I’m on SVN build 1661.

All I can say is it’s about damn time. I believe this is what has made XBMC so much faster at displaying movies.
It’s definitely a step in the right direction. I’m still not convinced that a full-fledged database will be the way to go, but using it as the cache engine definitely has helped my setup.
A database will be required for some of the features I’d like to see in future releases, so it will be interesting to see how they implement the performance of a database model, while not becoming overly bloated like MyMovies and even OML.
Well SQLite is definitely the way to go if you want portability and speed. It’s used in a ton of projects and doesn’t require an install. All it needs is a dll that you include in your project. There certainly isn’t that same feeling of bloat you get with SQL Express. I replaced an in-memory datatable with SQLite in my pet VB project and it’s pretty easy to work with even for a newb like me.