Return-Path: X-Original-To: apmail-couchdb-user-archive@www.apache.org Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id F3EB34580 for ; Thu, 30 Jun 2011 00:50:36 +0000 (UTC) Received: (qmail 31834 invoked by uid 500); 30 Jun 2011 00:50:35 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 31781 invoked by uid 500); 30 Jun 2011 00:50:34 -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 31773 invoked by uid 99); 30 Jun 2011 00:50:34 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 30 Jun 2011 00:50:34 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of jens@mooseyard.com designates 208.97.132.145 as permitted sender) Received: from [208.97.132.145] (HELO homiemail-a31.g.dreamhost.com) (208.97.132.145) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 30 Jun 2011 00:50:27 +0000 Received: from homiemail-a31.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a31.g.dreamhost.com (Postfix) with ESMTP id C00C6202043 for ; Wed, 29 Jun 2011 17:50:05 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=mooseyard.com; h=content-type :mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to; q=dns; s= mooseyard.com; b=ny8iR+U02319vrK7hIklpmvYdYya4Iu2ugba7ISLI8NL3qH CL/UvklUTD+xTJHsBu5xYWTdks3cy9MFMxNQlJeM+SsesK/TsxhR2qYdZC3TPYQq +bOo7UFX4fuPQ3nlCTdwaU6Q+HG3K0960kILuDJwEtw7XANfzsNsdgif4TCw= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=mooseyard.com; h= content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to; s= mooseyard.com; bh=s1vPvFKv5IEWD8oISFDGdYWHLtw=; b=NC0Od+/ceyWDBK 1aAOheoEB2/K99GBOGfCUoTQ4dZ/cmMyS/G9sf8Uso2SFmiABpFWcGosa7uXCTPU cDcg/xEjpVfFqBcDAuneusQBZbskWe4mnnI3DPxGPhe7FPlvhrRQAoCBZTE53oyg mv20SktvN7PXc63DAetjStvpHuLbY= Received: from [10.0.1.114] (c-98-210-115-152.hsd1.ca.comcast.net [98.210.115.152]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: jens@mooseyard.com) by homiemail-a31.g.dreamhost.com (Postfix) with ESMTPSA id 75F3D202038 for ; Wed, 29 Jun 2011 17:50:05 -0700 (PDT) Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Apple Message framework v1084) Subject: Re: Frugal Erlang vs Resources Hungry CouchDB From: Jens Alfke In-Reply-To: Date: Wed, 29 Jun 2011 17:50:03 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <15FF8A3B-C65F-4F7B-981B-23DC58D4C42A@mooseyard.com> References: To: user@couchdb.apache.org X-Mailer: Apple Mail (2.1084) X-Virus-Checked: Checked by ClamAV on apache.org On Jun 29, 2011, at 4:59 PM, Zdravko Gligic wrote: > In many places I have read how Erlang runs on small devices and how > (as a result) it is very frugal with resources. I think that I have > read that or at least something to that effect. I=92m not an Erlang expert, but the =93typical=94 use-case Erlang was = designed for was running Ericsson=92s telecom switches, which are not = small devices. The resource advantage it has is very lightweight = parallelism, so you can run tens of thousands of =91processes=92 at once = without consuming huge amounts of RAM in stack space. > Whenever I come across such CouchDB resources related postings, I keep > thinking about all of those Couches on all of those mobile devices (at > least in all of those presentations and slides) and asking my self > "how do they do that" ? A mobile device is typically going to use CouchDB to store = personal-sized data sets, like your to-do list or phone book or bug = queue, or your save state in a game. And it=92s probably going to have = one client at a time, connected by loopback on localhost, sometimes = making a single sync connection to an upstream server database. In other words, it=92s not going to be serving a million-document = corporate database to thousands of clients simultaneously. For those sort of workloads, CouchDB runs fine on a mobile device, = especially if the client compacts the database frequently. SQLite might be a good comparison =97 you could use it to manage very = large databases [although maybe not so well as MySQL or Postgres] and = for that purpose you=92ll want a good amount of RAM and disk space. But = for small data sets, it fits fine into embedded devices like iPhones and = even microwave ovens. =97Jens=