Return-Path: Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: (qmail 48585 invoked from network); 12 Aug 2010 06:23:55 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 12 Aug 2010 06:23:55 -0000 Received: (qmail 79810 invoked by uid 500); 12 Aug 2010 06:23:54 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 79532 invoked by uid 500); 12 Aug 2010 06:23:51 -0000 Mailing-List: contact user-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@couchdb.apache.org Delivered-To: mailing list user@couchdb.apache.org Received: (qmail 79524 invoked by uid 99); 12 Aug 2010 06:23:50 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 12 Aug 2010 06:23:50 +0000 X-ASF-Spam-Status: No, hits=2.5 required=10.0 tests=FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,PLING_QUERY,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of 7zark7@gmail.com designates 209.85.160.52 as permitted sender) Received: from [209.85.160.52] (HELO mail-pw0-f52.google.com) (209.85.160.52) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 12 Aug 2010 06:23:41 +0000 Received: by pwj8 with SMTP id 8so568891pwj.11 for ; Wed, 11 Aug 2010 23:23:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=gdAiq8+/IBj156//4bbWdIhnkpBwxbFSnelCX9V0Zgo=; b=HB38wmC/MGzn8UAHIz/ML0V0wTue5Gg/PiatG24xZmzPeM3UdWDGnR1phrbbA2YZI4 DCM7MjupVTj77gUGJaAI0r6sbq4DC8pFXjUz3sYBVITF1btjewYUL7DSN4eqGUVewlrD 7bwgCa8Q4RUQ+Q9o1xH9TTM3FJWpFpjvL6svw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; b=PJQ4C5m+d/Gy9GXxm9lHGtgym6rqjMsLZ7osjA7IWWvWpoimLycHNMPELF8LJLnwNM NGl9lixamEZXJLQaae4u/ta0MdAF7Cx5aDa/ak6CveZFILlzE938S0Nns3Aq2nLAO9Jp DfGVx2KJR8e733qDN4cMIv4qlTxBZMCNrAqDc= Received: by 10.114.112.18 with SMTP id k18mr23146896wac.133.1281594199636; Wed, 11 Aug 2010 23:23:19 -0700 (PDT) Received: from iMac.local (pool-71-102-220-219.snloca.dsl-w.verizon.net [71.102.220.219]) by mx.google.com with ESMTPS id d38sm1676627wam.20.2010.08.11.23.23.17 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 11 Aug 2010 23:23:18 -0700 (PDT) Message-ID: <4C639351.1030902@gmail.com> Date: Wed, 11 Aug 2010 23:23:13 -0700 From: 7zark7 <7zark7@gmail.com> User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: user@couchdb.apache.org CC: Victor Stan Subject: Re: CouchDB Huh! What is it good for? References: In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Just piggy-backing on what others have said: Where CouchDB is really great in my experience is for 2 or 3-tiered webapps: You can replace the data-tier's REST interface, app server, and relational DB all with CouchDB, and you pick up a very scalable and distributable system to boot. But in many applications you will need something "in front of" CDB to do additional business logic and processing, e.g. Java webapps, RoR, etc. Where it gets cool/confusing is that you can do a lot in the web-tier/client via CouchApps hosted directly within CouchDB. You can solve a surprising number of needs with just CouchApps, but it's not a full replacement for other type app servers IMHO. However I'd try not to confuse CouchDB as merely the "app server for CouchApps" - it would still be great as just a DB, even without couchapps! Hope this helps. On 8/11/10 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? > > > I appreciate all enlightening information from you! > > Victor Stan