[comp.databases] B*-Tree package needed!

kilger@Chicago.ira.uka.de (Christoph Kilger) (12/18/90)

Hello.

I am looking for a brilliant B*-Tree package that meets the following
requirements:

	- It should be written in C.

        - Primary and secondary keys should be supported.

        - The interface to the storage manager should be interchangeable.

Does anyboy knows about such a rather elementary but scarce 
software package? 

Please answer per e-mail (kilger@ira.uka.de) or write to 
	Christoph Kilger
 	Inst. f. Programmstrukturen und Datenorganisation
        Univ. Karlsruhe
        7500 Karlsruhe
        Fed. Rep. of Germany

Christoph.

trogers@yosemite.Eng.Sun.COM (Tom Rogers - Database Engineering) (12/19/90)

>I am looking for a brilliant B*-Tree package that meets the following
>requirements:
>
>- It should be written in C.
>- Primary and secondary keys should be supported.
>- The interface to the storage manager should be interchangeable.
>
>Does anyboy knows about such a rather elementary but scarce
>software package?
>Christoph Kilger

Sun's NetISAM is an X/Open branded implementation of the X/Open XPG3 ISAM 
spec. The API (Application Programming Interface) is ISAM (retrieval of 
records by key or partial key, by record number, sequentially in key order, 
sequentially in physical order), and the implementation is an optimized (for 
Sun) B*-tree.  It works both locally (without a daemon) or remotely (with a 
daemon or daemons on the server machine); it is incredibly fast; and it is 
written in C. Articles on NetISAM have appeared in the April 1990 
Sun Technical Bulletin, May 1990 SunExpert magazine, and the May/June 1990 
Sun Tech Journal.

doug@bear.cis.ohio-state.edu (Doug Kerr) (12/19/90)

In article <90.351.16:19:09@ira.uka.de> kilger@ira.uka.de (Christoph Kilger) writes:
>
>Hello.
>
>I am looking for a brilliant B*-Tree package that meets the following
>requirements:
>
>	- It should be written in C.
>
>        - Primary and secondary keys should be supported.
>
>        - The interface to the storage manager should be interchangeable.
>
>Does anyboy knows about such a rather elementary but scarce 
>software package? 

A B+tree routine was posted to comp.sources.misc in January.  I used
it in a files class last quarter.  It seemed to work ok.
--------------------------

Article 1096 of comp.sources.misc:
Path: tut.cis.ohio-state.edu!cs.utexas.edu!uunet!allbery
>From: mjr@umiacs.UMD.EDU (Marcus J. Ranum)
Newsgroups: comp.sources.misc
Subject: v10i027: B+tree library, part01 of 5
Message-ID: <77162@uunet.UU.NET>
Date: 20 Jan 90 01:19:23 GMT
Sender: allbery@uunet.UU.NET
Lines: 2482
Approved: allbery@uunet.UU.NET (Brandon S. Allbery - comp.sources.misc)

Posting-number: Volume 10, Issue 27
Submitted-by: mjr@umiacs.UMD.EDU (Marcus J. Ranum)
Archive-name: b+tree_mjr/part01

	This is the source code for a variable-length key variable
page size b+tree library. Also included is source for a variety of
test programs, a semi-useable record manager, and a dbm-lookalike
library built on top of the record manager and b+tree. (dbm(3) will
blow it away performance-wise, of course).

	This software has been tested (and works) on the following:
Pyramid/OSx, Sun4/SunOs, Sun3/SunOs, Digital Vax/BSD4.3,
Digital DECstation3100/Ultrix

	This software has been tested and found NOT to work on the
following:
SCO Xenix - I have no idea why because I don't have one


Contents::
----------------------------------------------------------------------
COPYRIGHT	- licensing/copyright notice. read it, please.

Makefile	- makefile

btlib		- source for the b+tree library. directions for
		compilation are in btlib/README.

doc		- manual pages for the b+tree library

btdbmlib	- source for a sort of record management library
		that is pretty much of a "toy" library, and will
		probably not cut it for serious projects unless it
		is beefed-up a bit. Also includes source for a 
		dbm-clone library that uses b+tree indexes.
		the record manager was designed for an application
		I wrote that demanded being able to store things
		of practically any size, and did not require high
		performance. if you are trying to write a real
		database, please don't waste your time even looking
		at it.

utils		- utility programs and toys, including test-rack
		software for the b+tree

--
 Douglas S. Kerr, Department of Computer and Information Science
 The Ohio State University; 2036 Neil Ave. Columbus OH USA 43210-1277
 doug@cis.ohio-state.edu                    614/292-1519
 ...!pyramid!osu-cis!doug