On Aug 11, 2010, at 10:43 AM, Victor Stan wrote: > So in going through the CouchDB book, and playing a bit more with it, > as well as thinking about the needs of my own projects I came to > realize that perhaps there are some things that I need to better > understand or that couch db may not be able to handle because of it's > inherent nature. I will like it of you folks helped me shed some light > on these discoveries/opinions... > > The way I see it now, Couch DB is a really good platform for creating > highly scalable apps that are restricted to the data in the database, > and whatever JavaScript can do in a web browser. This means that Couch > DB can do anything that is implemented in a web browser like HTML, > CSS, SVG, Web3D/webGL(in the future/nightly builds) and whatever > documents exist in the database. > > However, what CouchDB can't handle is anything that needs to be > computed, which relies on specific libraries, outside the scope of > CouchDB itself, such as for example, image processing, video/audio > processing/encoding, cryptography(although maybe some js options > exist) > > This means that CouchDB can excell at information and data that is > stored exactly in the way that it is meant to be displayed (if it is > not computed on the fly, or text) but can't handle any 'heavy' > computation on binary data. This would limit the extend that CouchApp > can be seen as a true 'application' development platform, to the > extent that it is pretty much limited to dealing with database > introspection, input/output, but no complex computation (that is > beyond map/reduce)... > > How much of that is right/wrong? >
That's right as far as it goes. Eg: there's a whole slew of things you can't do with just a standalone CouchDB (from an RSS reader to a image resizing, to certain kinds of view queries which require a client to pipe the output of view A to database B for further processing.) However, there are a few simple patterns for embedding CouchDB and CouchApps in more heavyweight processing chains. For instance, the easiest way is to follow the _changes feed. We are doing a webcast on the 25th on exactly this topic: http://oreillynet.com/pub/e/1708 Cheers, Chris > > I appreciate all enlightening information from you! > > Victor Stan
