Re:Redis and SQLite: Why wait for good enough?
by sokoloff on Thursday February 03, 2011 @02:37PM
(#2176399)
I've written about it briefly before on HN, and it's very beneficial but not proprietary tech. Basically we create a "shim" database containing our app's sprocs, views and functions, and additionally views to the transactional database tables in another database.
That means that release N can be pointed at the "real" database, while release N+1 can be pointed at the shim DB and they're both using the same transactional data. You can run both in parallel until you commit to N+1, whereupon you shutdown all N app servers, update the sprocs, views and functions in the main DB, and (optionally) point your web servers back at the main DB. There are a few other details to take care of, but that's the gist of it, and the details are minor, or at least we found them to be.
Disclaimer: the above is my experience on MS-SQL at a pretty good sized eCommerce site. Other RDBMSs may not work quite as well, or your app may use heavily features that don't work in "shim mode".
Re:Redis and SQLite: Why wait for good enough?
by SkyMarshal on Thursday February 03, 2011 @04:57PM
(#2177103)
Ah, very cool, thanks.
I prefer encapsulating database logic in SPs as well, and am always interested in learning how others have solved some of the problems incurred with them.