guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ANN] guile-wiredtiger 0.6


From: Amirouche Boubekki
Subject: Re: [ANN] guile-wiredtiger 0.6
Date: Sun, 28 May 2017 11:40:19 +0200
User-agent: Roundcube Webmail/1.1.2

On 2017-05-28 07:46, Nala Ginrut wrote:
Congrats!

Thx!

I pushed most of the documentation in html at [1].

I am preparing a 0.6.1 release with a hopefully a guix package and prolly a screencast.

[1] http://hyperdev.fr/projects/wiredtiger/

2017年5月27日 下午5:17,"Amirouche"
<address@hidden>写道:

I recommend you ping before using it. I am amz3 on #guile @
irc.freenode.net [10].

Le 27/05/2017 à 11:12, Amirouche a écrit :

Héllo!

I am pleasedto announce the immediate availability of
guile-wiredtiger. A database system for guile.

wiredtiger in a few bullet points:

- ACID
- NoSQL (in the sens it has no (sugar) SQL DSL)
- networkless
- automatic index
- multithread support
- ordered key/value store
- it requires no setup (like sqlite)
- it does prefix compression (nice for timeseries)
- it does compression
- it does encryption

It's similar to leveldb, rocksdb and bsddb. The creator of
wiredtiger did previously code bsddb now part of oracle.

It only works on 64bit systems.

At the very core, it's a configurable ordered key/value store,
column aware, with global transactions.

It's not cache database like REDIS.

It's more powerful than RDBMS model and can implement it
(demonstrated in [1]).

[1]


http://hyperdev.fr/notes/somewhat-relational-database-library-using-wiredtiger.html
[1]

The low level API allows to create tables (!) with two kind of
columns: key columns and value columns (somewhat like cassandra).
Then you can lookup entries in the database using the key with
search procedures. There is two kinds of search procedure. One
does exact match of the whole key columns, the other does an
approximate match, where you lookup for a key prefix (This is
actuallly very useful). Once you have a pointer to an entry in
the table you can navigate it quickly using next and previous
procedures (remember the table is ordered).

There is higher level abstractions like a graphdb with
gremlin-like querying, a feature space with microkanren querying
and an inverted index for looking up words in documents.

You can get it using the following command:

git clone https://framagit.org/a-guile-mind/guile-wiredtiger.git
[2]

I created several toy projects using this library, actually all my
work is based on this library:

- https://framagit.org/a-guile-mind/culturia [3]
- https://framagit.org/a-guile-mind/hyper [4]
- https://framagit.org/a-guile-mind/nanoblog/ [5]
- https://framagit.org/a-guile-mind/azul [6]

And various posts:

-

http://hyperdev.fr/notes/getting-started-with-guile-wiredtiger.html
[7]
-


http://hyperdev.fr/notes/getting-started-with-guile-uav-database.html
[8]
-


http://hyperdev.fr/notes/somewhat-relational-database-library-using-wiredtiger.html
[1]
-


http://hyperdev.fr/notes/a-graph-based-movie-recommender-engine-using-guile-scheme.html
[9]

The project is far from perfect as it's still not packaged and the
document is not up to the Guile standard but it's usable.

Happy hacking!


Links:
------
[1]
http://hyperdev.fr/notes/somewhat-relational-database-library-using-wiredtiger.html
[2] https://framagit.org/a-guile-mind/guile-wiredtiger.git
[3] https://framagit.org/a-guile-mind/culturia
[4] https://framagit.org/a-guile-mind/hyper
[5] https://framagit.org/a-guile-mind/nanoblog/
[6] https://framagit.org/a-guile-mind/azul
[7] http://hyperdev.fr/notes/getting-started-with-guile-wiredtiger.html
[8] http://hyperdev.fr/notes/getting-started-with-guile-uav-database.html
[9]
http://hyperdev.fr/notes/a-graph-based-movie-recommender-engine-using-guile-scheme.html
[10] http://irc.freenode.net

--
Amirouche ~ amz3 ~ http://www.hyperdev.fr



reply via email to

[Prev in Thread] Current Thread [Next in Thread]