Return-Path: Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: (qmail 84230 invoked from network); 21 Jan 2011 14:59:33 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 21 Jan 2011 14:59:33 -0000 Received: (qmail 59332 invoked by uid 500); 21 Jan 2011 14:59:31 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 58865 invoked by uid 500); 21 Jan 2011 14:59:27 -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 58857 invoked by uid 99); 21 Jan 2011 14:59:26 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 21 Jan 2011 14:59:26 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=10.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of heshiming@gmail.com designates 74.125.82.180 as permitted sender) Received: from [74.125.82.180] (HELO mail-wy0-f180.google.com) (74.125.82.180) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 21 Jan 2011 14:59:19 +0000 Received: by wyb28 with SMTP id 28so1864949wyb.11 for ; Fri, 21 Jan 2011 06:58:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:date:message-id:subject:from:to :content-type; bh=dL6YnnoY8QxU+cZ3Et9Lk6jJcbG8ph1vbBmnOVt0Gz8=; b=wXVwrPAxozqVdhkqbYg+HdJN+xQINuHpZILLQCKx0PSR6FNz9BOeNbMRoOmqFTMj+u 2bgcCqRgQXEROugFyGDtoVPIaK/VcFbGvqnXywbq22EfFNRkLA6/FYXsuLql+HeR7V7B gqG5r0eCTRTl6ylaHQXjIm9vSypIpRIjOdF2U= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=Gd21ZjU1NKZgdnFo/FbIyHdnXi1R+8CgqNHgVdyz+rZJX+1IHUoVsmqkQY5ptbuQkR dnvvbscncWlZ/2NrBHcltEY76exDqFcfJDWq5dVngTRLaMRbzZGLHYqtTa1SebG54K/k zuZBlEiRQIsDiPF/AZpw0QUP8Tz+CtKBCd/Bo= MIME-Version: 1.0 Received: by 10.227.152.65 with SMTP id f1mr885388wbw.74.1295621938432; Fri, 21 Jan 2011 06:58:58 -0800 (PST) Received: by 10.227.146.196 with HTTP; Fri, 21 Jan 2011 06:58:58 -0800 (PST) Date: Fri, 21 Jan 2011 22:58:58 +0800 Message-ID: Subject: CouchDB suitable as session store? From: He Shiming To: user@couchdb.apache.org Content-Type: text/plain; charset=ISO-8859-1 Hi, I've created a beaker extension to use CouchDB as session store (because my application is already using couchdb under pylons / python). The beaker library serializes a dict of objects using pickle. So it's essentially a key (session id) value (serialized content) pair. My application puts lots of information in sessions. And some of them are constantly changing during user navigation. I quickly noticed that a single user can create some 5MB large documents during like 3 minutes of navigation. After compacting it's like 20KB. This doesn't look good because it's taking up too much space and I may need to constantly go to futon to compact it. Compacting might be slow because of the size. I was wondering if there's an option for me to compact a particular document after each time I save? Or should I just go for redis for session store? Thanks! -- Best regards, He Shiming