Return-Path: Delivered-To: apmail-incubator-couchdb-user-archive@locus.apache.org Received: (qmail 81259 invoked from network); 12 Jun 2008 18:28:47 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 12 Jun 2008 18:28:47 -0000 Received: (qmail 61698 invoked by uid 500); 12 Jun 2008 18:28:49 -0000 Delivered-To: apmail-incubator-couchdb-user-archive@incubator.apache.org Received: (qmail 61681 invoked by uid 500); 12 Jun 2008 18:28:49 -0000 Mailing-List: contact couchdb-user-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: couchdb-user@incubator.apache.org Delivered-To: mailing list couchdb-user@incubator.apache.org Received: (qmail 61670 invoked by uid 99); 12 Jun 2008 18:28:49 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 12 Jun 2008 11:28:49 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of schickb@gmail.com designates 64.233.166.182 as permitted sender) Received: from [64.233.166.182] (HELO py-out-1112.google.com) (64.233.166.182) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 12 Jun 2008 18:27:59 +0000 Received: by py-out-1112.google.com with SMTP id u52so1461173pyb.13 for ; Thu, 12 Jun 2008 11:28:16 -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:subject:content-type :content-transfer-encoding; bh=h1PKlZhT1pin5pmfeKd/UrWH2Dg7yxRe6Pf4tBeqjaE=; b=pdsNOKFrkBim0HphM0oUhupFePMu/PqiEzONk8UAV5U3tFfol9C4+lan1jK0KucccU eEGuCcwlMv3OGY+dTLYGMDq1d/tolpM0k0KkJCW556PhwwKFDEN3VvDrsj9x6r6oTA3j Lh996XZObzeAm+IyPMOsge9Ew/wJ4dYr+D/no= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; b=UQmHGiCuAOc7MWGCq586aeXJw+7f8IpizcDDsTBSHeEaUO5tvp3ezs3HZ5zZs3gCsI 3lEFjuye6tl/GCceTch6d+z4CamgQZUhkTnAIBIgShFhgDYB3W3scUpf3wQithXS7qxv ic22wvOGmOGsdfG4AG/WSq3FEh758ReQfuZJ0= Received: by 10.115.90.1 with SMTP id s1mr1933799wal.214.1213295296081; Thu, 12 Jun 2008 11:28:16 -0700 (PDT) Received: from ?192.168.1.2? ( [71.212.28.28]) by mx.google.com with ESMTPS id m28sm2746782poh.10.2008.06.12.11.28.15 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 12 Jun 2008 11:28:15 -0700 (PDT) Message-ID: <48516A9B.5060401@gmail.com> Date: Thu, 12 Jun 2008 11:27:39 -0700 From: Brad Schick User-Agent: Thunderbird 2.0.0.14 (X11/20080505) MIME-Version: 1.0 To: couchdb-user@incubator.apache.org Subject: Modifying fields Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org I've just started evaluating CouchDB and so far I'm very impressed. I've been comparing it to Amazon's SimpleDB in particular, and couchdb looks like a great alternative. One thing that I haven't found in the couchdb API that surprises me, however, it a way to directly add or modify individual fields within a document. For example, how would I efficiently update just one field in a few thousand large-ish documents? Looking at the current API, it seems like I would have retrieve each document in its entirety, update that one field, then write back the entire document. I see there is a way to bulk write many documents at once, but that's only a small improvement. Have I missed something? If not, is this ability planned for the future? My first thought was that this could be implemented this with server-side script functions related to views and/or with HTTP methods on field URIs. Thanks, -Brad