From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Nala Ginrut Newsgroups: gmane.lisp.guile.user Subject: Re: [ANN] guile-wiredtiger 0.6 Date: Sun, 28 May 2017 13:46:28 +0800 Message-ID: References: <6cee0f96-a0ed-5129-7a70-374162221c12@hypermove.net> <96812ed5-5e71-7c89-8984-7b5b82ae310d@hypermove.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1495950421 27285 195.159.176.226 (28 May 2017 05:47:01 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 28 May 2017 05:47:01 +0000 (UTC) Cc: Guile User To: Amirouche Boubekki Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Sun May 28 07:46:56 2017 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dEr2T-0006sa-Rc for guile-user@m.gmane.org; Sun, 28 May 2017 07:46:54 +0200 Original-Received: from localhost ([::1]:42844 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dEr2V-0000vN-Ud for guile-user@m.gmane.org; Sun, 28 May 2017 01:46:55 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40398) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dEr29-0000v6-HR for guile-user@gnu.org; Sun, 28 May 2017 01:46:34 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dEr28-0003nF-0q for guile-user@gnu.org; Sun, 28 May 2017 01:46:33 -0400 Original-Received: from mail-oi0-x22e.google.com ([2607:f8b0:4003:c06::22e]:35779) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dEr27-0003mt-PR for guile-user@gnu.org; Sun, 28 May 2017 01:46:31 -0400 Original-Received: by mail-oi0-x22e.google.com with SMTP id l18so50708153oig.2 for ; Sat, 27 May 2017 22:46:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=CqNC2zhoEB4rSK70pq6D0919U5djqCJ8/3pfi6zmPZE=; b=TN/Abd1RjFhQSTJbDGHUMVcntfaI6W2oUTo3Tjjo/+tcdi782VbzbmSZmrV1zencL/ 7MwQ0XVCen9pQ5cZIWb8qwSqYm3WnjORByBaY4f7Ip3pGClQ+yRkgTUIpJeQqLty7ZA8 wBGBVr9Q5MANymu2aAQSy5a14QvofCDu60gqfeHgsJ3dgEfOE3e0mk0DWYzjMRbEuPzl RlMZvA0v1FlFMUB9NuUJTr41/MKl/CJYX6dlOqJTp23rvkS8pErGge0tv0LP+/HuXf4r rofqeWDl+W3T5HJkC86nHQRGWbPe4D9EjE6oWzHLXfWydBRn6/4y8GnR/bbCszsDqYpv NxzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=CqNC2zhoEB4rSK70pq6D0919U5djqCJ8/3pfi6zmPZE=; b=V0VCTvKLHQbfKJpnfdbAYORxauANDRTbKiB8Da+qYOaCgXH3WPUnwxiELbxP4PGJnZ ixSomWRMExfTcHMf2JUJc3Q200tnjX9rK0CQJKanv/OiFFehWzBGtMbcliCmx1nE7nNU Fd+YQAwxjuEURMUiCaOva2u85bJUrhPSrmdRuS0prz/BqrXejc6ES+YZ1sbrc+HkS+C5 E2OV//uyrXNO5Z7/Pshjmzuo+7LUmrM1oIBozTIActMjZBgMn5XcooniA2BSEYaq1AzU 2utpjswNOzXypBm4JDbvjnZzvZ1i9/2uYdIXF5YToqtetdmQFy2wj/DFQM7P8nF0Jy5C +egg== X-Gm-Message-State: AODbwcAZVT6gtDyWgV6wA414/FCNFNNy8wNOaF89EeqBVkh7DDU+7QJp QCb8xY/A/aAMSBh7hkUwJQYsGBw5xQ== X-Received: by 10.157.37.194 with SMTP id q60mr1835459ota.213.1495950390312; Sat, 27 May 2017 22:46:30 -0700 (PDT) Original-Received: by 10.157.37.80 with HTTP; Sat, 27 May 2017 22:46:28 -0700 (PDT) Original-Received: by 10.157.37.80 with HTTP; Sat, 27 May 2017 22:46:28 -0700 (PDT) In-Reply-To: <96812ed5-5e71-7c89-8984-7b5b82ae310d@hypermove.net> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4003:c06::22e X-Content-Filtered-By: Mailman/MimeDel 2.1.21 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:13750 Archived-At: Congrats! 2017=E5=B9=B45=E6=9C=8827=E6=97=A5 =E4=B8=8B=E5=8D=885:17=EF=BC=8C"Amirouch= e" =E5=86=99=E9=81=93=EF=BC=9A > I recommend you ping before using it. I am amz3 on #guile @ > irc.freenode.net. > > > Le 27/05/2017 =C3=A0 11:12, Amirouche a =C3=A9crit : > >> H=C3=A9llo! >> >> 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 di= d >> 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 i= n >> [1]). >> >> [1] http://hyperdev.fr/notes/somewhat-relational-database-librar >> y-using-wiredtiger.html >> >> 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. The= re >> 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 inde= x >> 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 >> >> I created several toy projects using this library, actually all my work >> is based on this library: >> >> - https://framagit.org/a-guile-mind/culturia >> - https://framagit.org/a-guile-mind/hyper >> - https://framagit.org/a-guile-mind/nanoblog/ >> - https://framagit.org/a-guile-mind/azul >> >> And various posts: >> >> - http://hyperdev.fr/notes/getting-started-with-guile-wiredtiger.html >> - http://hyperdev.fr/notes/getting-started-with-guile-uav-database.html >> - http://hyperdev.fr/notes/somewhat-relational-database-librar >> y-using-wiredtiger.html >> - http://hyperdev.fr/notes/a-graph-based-movie-recommender-eng >> ine-using-guile-scheme.html >> >> 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! >> >> > >