On Wed, 10 May 2000 23:48:48 CDT, the world broke into rejoicing as
[EMAIL PROTECTED]  said:
> It's been rumoured that Christopher Browne said:
> > There are two approaches:
> > 
> > a) Change over wholesale to MySQL or PostgreSQL, with all the resultant
> >    horrid administrative results, bloat, and licensing questions.
> >    Not particularly attractive.
> > 
> > b) Create some sort of "middleware" level in between GnuCash and the 
> >    "data store," thus providing the option of using your choice of:
> >    [ Text File | Something-like-DBM | SQL DBMS ].
> 
> There is a kind of middle-ground that I haven't seen anyone yet mention.
> 
> There are several 'sql' databases that are 'embedable' in the sense
> that unix  libdb/gdbm is 'embedable'.  These databases eliminate the
> administrative headaches of client/server sql db's.  They do this 
> precisely because they operate within the same address space as the app
> itself, and do not require separe user ids to be created, administered,
> or any daemons to be started & stopped, etc. 

That's fair enough.

> they are, I beleive:
> 
> CQL http://www.cql.com/  which btw provides b-tree and ISAM
> Gigabase us mirror is 
>     http://www.geocities.com/SiliconValley/Orchard/5802/gigabase.html
>      russian orig is http://www.ispras.ru/~knizhnik/gigabase.html
> FastDB http://www.geocities.com/SiliconValley/Orchard/5802/fastdb.html
> which is just gigabase in some different form.
> 
> I have *not* explored these.  I am suspicious about the quality of
> the gigabase/fastdb code.  Here are the +'s and -'s as I see them

Gigabase/FastDB do indeed look _interesting_; if there was some
software out there using them, that would be _very_ encouraging.

> + avoids db mgmt problem of true client/server sql
> + 'sql-like' query language paves a road that will allow gnucash 
>   to go full-fledged sql someday.
> 
> - fails to have the full data integrity of true client-server sql
> - isn't multi-user.

It's pretty much a given that the action of embedding will "nuke"
the notion of doing multi-user.

I'll take a different tack as to the "full data integrity" side of
it, though.  The author of these DBs claims that it offers "safely
on disk transaction logging."  It may not quite be "Oracle Archive
Logs," but it may still be reasonably preserving of integrity.

> Note that the other proposed alternatives: 
> 1) resierfs
> 2) libdb.a / gdbm
> 3) dBaseIII/foxbase clone
> 
> all share in the -'s and fail to pave the way for 'real sql'.
> (I find gdbm particularly apaling because there seems to be no obvious
> way to store 'records' with it, and it has no integrity whatsoever built
> into it.  Ditto reiserfs.  At least a foxbase clone could provide,
> at least in theory, at least a little bit of integrity.)

The "reiserfs" approach seems to me to be to create hordes of little
files, perhaps one for each transaction, or for each account.  Whatever
integrity is, or is not, there, would be under our control.

> I will try to understand CQL and giga/fasbase a bit more, I strongly urge
> y'all to do the same.   And if you know of other embedable db's (that
> are gpl'ed) let me know ...

Good comments.  I once compiled GigaBase and ran the test suite; it
seemed to run, to whatever extent that is meaningful...

The one problem is that that stuff is rather tied to C++, whilst
GnuCash decidedly isn't, at this stage...
--
Rules of the Evil Overlord #212. "I will not send out battalions
composed wholly of robots or skeletons against heroes who have qualms
about killing living beings.
<http://www.eviloverlord.com/>
[EMAIL PROTECTED] - <http://www.hex.net/~cbbrowne/lsf.html>

Reply via email to