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. 

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

+ 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.

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.)

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 ...

--linas

Reply via email to