LMDB bindings for Common Lisp
Common Lisp
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
src
t
.gitignore
.travis.yml
README.md
lmdb-test.asd
lmdb.asd

README.md

LMDB

Build Status

Common Lisp bindings to LMDB.

Overview

LMDB is really fast. Here's how much faster SQLite got when they ported the B-tree code to use LMDB.

This is implemented as a wrapper over the liblmdb library.

Usage

;; Create an environment
(let ((env (lmdb:make-environment #p"/some/directory/")))
  (lmdb:with-environment (env)
    ;; Create a transaction
    (let ((txn (lmdb:make-transaction env)))
      (lmdb:begin-transaction txn))
      ;; Create a database access object
      (let ((db (lmdb:make-database txn "db")))
        (lmdb:with-database (db)
          (lmdb:put db 1 2))
          (let ((vec (lmdb:get db 1)))
            (print vec)))))

License

Copyright (c) 2015–2016 Fernando Borretti

Licensed under the MIT License.