From: gonzalod@amex-trs.com (Gonzalo Diethelm)
Newsgroups: comp.databases
Subject: Btree/B+tree libraries
Date: 4 Sep 92 19:26:39 GMT



Distribution: world

This is a summary of my previous posting. The original post was:

>
> I'm looking for a Btree or B+tree library, hopefully with source
> code. The requirements are:
> 
> * Callable from C/C++.
> * Usable under MS-Dog and MS-Windows 3.1
> * Stores data and indexes in disk (as opposed to an in-memory
>   implementation).
> * Well documented... 8^)
> 
> Any help is appreciated. I did a search through Archie, but I couldn't
> decide what could and could not be helpful. Public domain preferred,
> shareware/commercial products are OK. Send responses through e-mail,
> will summarize if there is enough volume. Thanks in advance and regards.
> 

I forgot to add in that post that multiuser support is required. I
received answers from the following people (thanks!):

Margo Seltzer         margo@postgres.berkeley.edu
Ted Roycraft          ted@allegra.tempo.att.com
Bruce Momjian         root%candle.uucp@bts.com
Art                   pollarda@xray.byu.edu

I also received requests for a summary to the net and/or direct e-mail
from:

Ian Leonard           ian@eonsw.demon.co.uk
Dhiraj Sharma         dhiraj@bohra.cpg.oz.au
Yury Peskin           peskin@epx.cis.umn.edu

You guys are getting this summary directly; it is also being posted
to comp.databases and comp.sources.wanted. As always, thanks to
the net for its helpful responses. Regards.


=========================================================================

Margo suggested to take a look at the database library from Berkeley.
It contains a hashed access method, btrees, and a record number package
(built on top of the btrees).  It is available via anonymous ftp from:

        okeeffe.cs.berkeley.edu.
        /pub/db.tar.Z

This package looks pretty good, I haven't had luck in compiling it just
because my make utility is brain-dead (AIX, I love you! AAARRGGGHHHHH!
Sorry...8^). It doesn't provide any form of record locking or transaction
management.

Ted mentioned that Rogue Wave sells a C++ class library for UNIX/MSDOS
that contains a Btree on disk. He says it works fine with Windows 3.1 also.
They provide full source (as an option). I haven't had the chance to
check on this product.

Bruce mentioned MetalBase, a product I had seen before. It is available
from most archives. The current release is 4.0 (as far as I know), the author
is Richid Jernigan IV (richid@owlnet.rice.edu). From what I can recall,
it implements relations on disk using AVLs in a very efficient manner,
including multiuser access. Metalbase is shareware.

Art mentioned the C Database Toolchest by Mix Software. The toolchest
comes with a good B+tree as well as a good ISAM library. It also comes
with a 300 page manual (or so) and is quite well documented. Price is
$19.95 for the manual and library files and another $10 for source. I
called Mix Software and asked them about multiuser support; they are
working on it, and their gesstimated release date is somewhere within
the next four months.


gonzalod@amexphx.amex-trs.com
Gonzalo A. Diethelm                 (602)375-8410  home
16220 N 7th St Ap 1314              (602)492-3536  office
Phoenix, AZ 85022                   (602)492-4248  FAX
Newsgroups: comp.databases