1. B-Trees, B+Trees, skiplists, ISAM-files

Hello everybody,

I want to build a database in Euphoria. I looked at the Euphoria
database demo code and its usefull for small databases. For the
somewhat bigger databases I need faster access with indexfiles. I
think in terms of B+Trees, skiplist, hash tables or stuff like that.
I studied some B-Tree/ISAM in C and Pascal but to understand how its
works and to convert it into Euphoria code are two different things.
Therefore I'm looking for participants to create some new code or to
translate some existing C or Pascal code to Euphoria. Maybe, RDS can
provide Euphoria with index data objects in the way they did with
ATOMS and SEQUENCES or maybe you have a better Idea. Let me know.

Greetings,

Marcel Kollenaar

new topic     » topic index » view message » categorize

2. Re: B-Trees, B+Trees, skiplists, ISAM-files

At 10:30 AM 9/5/96 +0100, you wrote:
>---------------------- Information from the mail header -----------------------
>Sender:       Euphoria Programming for MS-DOS <EUPHORIA at
>MIAMIU.ACS.MUOHIO.EDU>
>Poster:       Marcel Kollenaar <M.Kollenaar at SLO.NL>
>Subject:      B-Trees, B+Trees, skiplists, ISAM-files
>-------------------------------------------------------------------------------

Hi Marcell.

I came across the same problem when I was writing "A Beginner's Guide To
Euphoria", the tutorial program. I wanted to create something that allowed
me to index a file randomly. I ended up writing a separate index file
that served as a go-between to the program and the target file. Each index
record contained the byte position to seek() to randomly address each
part of the target file. It's similiar to an access path on an AS/400
physical keyed file.

I'm not familiar with B-Trees, B+Trees or ISAM files, but if you want help
writing procedures to maintain a relational database similiar to
the AS/400 system, please contact me at moggie at interlog.com

Thank you

David Gay
http://www.interlog.com/~moggie/euphoria.htm
VISIT "A BEGINNER'S GUIDE TO EUPHORIA"!

new topic     » goto parent     » topic index » view message » categorize

3. Re: B-Trees, B+Trees, skiplists, ISAM-files

Marcel Kollenaar wrote:
> I want to build a database in Euphoria. I looked at the Euphoria
> database demo code and its useful for small databases. For the
> somewhat bigger databases I need faster access with indexfiles.
> I think in terms of B+Trees, skiplist, hash tables or stuff like that.

Definitely the mydata.ex example will be impractical for large numbers
of records. I wrote a faster database demo using hashing but it was
rather complicated, so I didn't want to include it as an example. B-trees
would be the proper way to approach the problem I would think.

> I studied some B-Tree/ISAM in C and Pascal but to understand how it
> works and to convert it into Euphoria code are two different things.
> Therefore I'm looking for participants to create some new code or to
> translate some existing C or Pascal code to Euphoria.

I think it would be an excellent idea for someone
to develop a general .e file (library), or even a full
program of some kind for the creation
and manipulation of databases based on a fast technique
such as B-trees.

> Maybe, RDS can
> provide Euphoria with index data objects in the way they did with
> ATOMS and SEQUENCES or maybe you have a better Idea. Let me know.

I don't see any need to add new data types to the core language.
I think you could set up a nice database system just by writing a set
of library routines for searching/reading/writing records etc.
Perhaps you would discover performance bottlenecks that could
be solved using additional library routines built into the interpreter.
Let me know if you need any help.

Regards,
    Rob Craig
    Rapid Deployment Software

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu