From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Linas Vepstas" Newsgroups: gmane.lisp.guile.user Subject: Re: guile-db Date: Wed, 15 Oct 2008 14:08:35 -0500 Message-ID: <3ae3aa420810151208o73421e79qce3b6361eddba47@mail.gmail.com> References: <1224013004.4370.5.camel@localhost> <3ae3aa420810141338o20adfbd4p5d9e6da4d5dc4226@mail.gmail.com> <1224038344.4370.23.camel@localhost> Reply-To: linasvepstas@gmail.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1224097747 4917 80.91.229.12 (15 Oct 2008 19:09:07 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 15 Oct 2008 19:09:07 +0000 (UTC) Cc: guile-user@gnu.org To: betoes Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Wed Oct 15 21:10:07 2008 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1KqBkx-0000xL-ED for guile-user@m.gmane.org; Wed, 15 Oct 2008 21:10:03 +0200 Original-Received: from localhost ([127.0.0.1]:49179 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KqBjs-00052x-OA for guile-user@m.gmane.org; Wed, 15 Oct 2008 15:08:56 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KqBjZ-00052X-Su for guile-user@gnu.org; Wed, 15 Oct 2008 15:08:37 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KqBjZ-000524-As for guile-user@gnu.org; Wed, 15 Oct 2008 15:08:37 -0400 Original-Received: from [199.232.76.173] (port=49557 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KqBjY-00051p-VQ for guile-user@gnu.org; Wed, 15 Oct 2008 15:08:37 -0400 Original-Received: from yx-out-1718.google.com ([74.125.44.158]:64030) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1KqBjY-000753-C5 for guile-user@gnu.org; Wed, 15 Oct 2008 15:08:36 -0400 Original-Received: by yx-out-1718.google.com with SMTP id 34so665575yxf.66 for ; Wed, 15 Oct 2008 12:08:35 -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:reply-to :to:subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=lXX9qRHHjYZ5k0YgBB1cFT5uk1Kyg6oMNoO2TXYQhwE=; b=OtahvTfhbdP9ibv4sfp4OAqJTrW0wWPuklpx4TZfA8u8bUNsKjtbb02l5MYzsSYoFa GgBbYGlqzPT4DHKZsoTY6m0OCEme+vxcNKj3+4nzN7FUAi3PWC0WrzpxYQMjK5RIa9ou j4R1yT0PI+WFWMoJg6rwJtUUgwMfGt5I3WbtM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:reply-to:to:subject:cc:in-reply-to :mime-version:content-type:content-transfer-encoding :content-disposition:references; b=wS0udowtjvbPl3Zq9kbjnawDSNOXUyziHGs2Kludq+5qTHkOhdRE0IkbsvxaM5WRrT +4A8hBGKWDOfGlymOkLUsu7gZnJlnNl+iF+wGT3J/gcPVfSbqA0lq+xAu/uqtOACsCJb AQfcaxFMxLUjhKyRxJ8gvLBJU8k4G3lrure8M= Original-Received: by 10.100.178.15 with SMTP id a15mr1517409anf.3.1224097715170; Wed, 15 Oct 2008 12:08:35 -0700 (PDT) Original-Received: by 10.100.207.16 with HTTP; Wed, 15 Oct 2008 12:08:35 -0700 (PDT) In-Reply-To: <1224038344.4370.23.camel@localhost> Content-Disposition: inline X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 2) X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-user-bounces+guile-user=m.gmane.org@gnu.org Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.user:6830 Archived-At: 2008/10/14 betoes : > On Tue, 2008-10-14 at 15:38 -0500, Linas Vepstas wrote: > > 2008/10/14 betoes : >> Hello list, >> >> In the Debian distro, there is a packge named guile-db, which refers to a >> Berkeley DB wrap for Guile. Do someone know if it is active? If there is a >> repository or web page? I tried the maintainer and author e-mails with no >> success. > > Dunno. However, fyi, I'm maintaining guile-dbi, which wraps > postgres and mysql. > > guile-dbi is great! I'm using it, thanks! > > Berkeley DB is a low-level database, not a high level as SQL flavors, it can > be used as the base of them, it is GPL. I know what BDB is. I tend to avoid it because it's performance can be disasterous for certain database loads. I (re-)discovered this summer that BDB insists on always flushing key indexes to disk, and there seems to be no way to tell it to not do this. This is OK, I guess, if you need your DB to be hardend against index corruption in the event of a power failure, but it sucks for performance. If you are trying to create an new DB by adding millions of new key-value pairs, this "feature" is utterly un-needed (if there's a power failure, just rebuild the DB from scratch) and it will absolutely kill performance. By contrast, you can tell Postgres to not build indexes until later, and to not write anything to disk for as long as it can. For this case, postgres is orders of magnitude faster than BDB, taking hours instead of days to build multi-million record databases.. I was unable to find any way of turning off this "feature" in BDB, so for me, its a non-starter. Shame, since otherwise for me, I don't need 99% of the rest of SQL, and BDB might indeed have been simpler/faster on the query side. --linas