guile-user
[Top][All Lists]
Advanced

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

[ANN] guile-wiredtiger 0.6.3


From: Amirouche
Subject: [ANN] guile-wiredtiger 0.6.3
Date: Wed, 3 Jan 2018 21:12:55 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0

Héllo,

I am happy to announce that I released guile-wiredtiger 0.6.3.

It's mainly a small bug fix release to make it possible to run
tests with guix ie. improvements on previous work on autotools
support.

Also, `(call-with-cursor name proc)` can return multiple values.

The guix package will be available shortly. In the mean time you
can install guile-wiredtiger using the following cli dance:

  git clone https://framagit.org/a-guile-mind/guile-wiredtiger.git
  cd guile-wiredtiger
  guix package -f guix.scm

Since the last mail, I discovered that no specific code was required
to use guile-fibers smoothly. See ``with-context'' form
inside ``(wiredtiger extra)''. This means that no further development
will happen on guile-wiredtiger until I do a release of culturia.

Maybe I will move to GNU documentation tool.

# Kesako WiredTiger?

WiredTiger is database library that is:

- ACID
- networkless
- multithreaded

It's an ordered key-value store.

It's similar to leveldb, rocksdb and bsddb. The creators of WiredTiger
did previously code bsddb.

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 a cache database like REDIS.

It's more powerful than RDBMS model and lower level.

# Kesako guile-wiredtiger?

guile-wiredtiger are guile bindings of WiredTiger library.

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 procedures. 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 are indices, but they are unlike RDBMS indices.

There is higher level abstractions like a grf3 with gremlin-like
querying and a feature space with microkanren querying which leave
behind the burden of understanding how all this weird things work and
get things done.

Happy New Year and Happy Hacking!

~ amz3




reply via email to

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