* Fwd: A (Graph?) database for GNU
@ 2014-01-03 6:43 amz3
0 siblings, 0 replies; only message in thread
From: amz3 @ 2014-01-03 6:43 UTC (permalink / raw)
To: Guile User
Héllo,
I foward to you (guile-user) this message that might be of interest,
-------- Original Message --------
Subject: A (Graph?) database for GNU
Date: 2014-01-01 15:38
From: amz3 <amz3@hypermove.net>
To: gnu-misc-discuss@gnu.org
Héllo all,
First, I know that it's not welcomed to ask people to write free
softwares but I lake time and knowledge for this one. I think that
someone else can be happy to code such a thing that's why I bring it to
GNU community attention.
As far as I know there is no database in GNU except gdbm
(http://www.gnu.org.ua/software/gdbm/) but it lakes a lot of the
features needed to build reliable programs on top of it among which
transactions.
To my mind, if a database has to be built for GNU it must be an ACID
graph database (graphdbs). This is the kind of database that solve the
general problem:
- it's relational
- schema free
To be fully reliable transactions must be able to span over several
elements.
Graph databases share a lot with object oriented (OO) databases. OO
databases are not as good as graphdbs for relational data.
There is already several free graph databases that meets those criteria
http://www.neo4j.org/ is the most popular, http://www.orientdb.org/ is
another one (mvcc based). Both are written in Java. Recently, Oracle
claimed to have it too.
Manyfolds reasons allow me to think that such a database written in C
will be a very useful and very successful project. *I warmly recommend
any GNU hacker with interest in this particular domain to consider such
a project*.
I did some research and experiments in Python, I only highlight things
that can be useful:
- Notes about the design of a graph database
http://hypermove.net/notes/projects/graphitidb.html
- A graph database written on top of berkley db, with an introduction to
graphdbs API https://github.com/python-graph-lovestory/ajgu-graphdb
- A graph database server written in Java with Scheme and Python
scripting powers
https://github.com/python-graph-lovestory/Java-GraphitiDB
- Documentation of Blueprints' Python bindings, with an introduction to
graphdbs API
https://python-graph-lovestory.readthedocs.org/en/latest/blueprints.html
- Not written by me, functional DSL/API for graphdbs
https://github.com/tinkerpop/gremlin/wiki
Sadly or not, I have no application that can show of the capabilities of
graph databases. Like I said above graphdbs solve the general problem,
so any project can use graphdbs: web, non-web and else. This doesn't
mean that it is the best solution for a given a problem (e.g. log
structured data) but in a lot of situation it is a better solution
because it's more flexible. And always the best solution when
prototyping.
Here is list of possible projects involving graph that will help
popularize graphdbs:
1) graph datastructure using the glib
2) graph datastructure for Guile
3) persistent/functional graph datastructure for Guile (cf.
https://github.com/ijp/fectors)
4) graph database on top of gdbm (in Guile?)
5) graph database on top of berkleydb in Guile
6) an embeddable ACID graph database with Guile bindings
7) a ACID graph database server with at least Guile querying support
Spread the word!
Comments welcome! :)
Thanks,
--
amz3 ~ http://hypermove.net/
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2014-01-03 6:43 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-03 6:43 Fwd: A (Graph?) database for GNU amz3
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).