lmdb-simple: Simple API for LMDB

[ bsd3, database, library ] [ Propose Tags ]

This package provides a simple API for using the Lightning Memory-mapped Database (LMDB).

[Skip to Readme]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS],,,,
Dependencies base (>=4.7 && <5), bytestring (>=0.10 && <0.11), lmdb (>=0.2 && <0.3), serialise (>=0.2 && <0.3) [details]
License BSD-3-Clause
Copyright © 2017–2018 Robert Leslie
Author Rob Leslie
Maintainer rob@mars.org
Category Database
Home page https://github.com/verement/lmdb-simple#readme
Bug tracker https://github.com/verement/lmdb-simple/issues
Source repo head: git clone https://github.com/verement/lmdb-simple.git
Uploaded by RobLeslie at 2018-03-24T22:14:34Z
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 3189 total (18 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2018-03-24 [all 1 reports]

Readme for lmdb-simple-

[back to package description]

Simple Haskell API for LMDB

This package allows you to store arbitrary Haskell values in and retrieve them from a persistent Lightning Memory-mapped Database on disk.

LMDB is a high-performance ACID-compliant no-maintenance read-optimized key-value store. Any Haskell type with a Serialise instance can be stored in an LMDB database, or used as a key to index one.

This package provides a few different APIs for using LMDB:

  • The basic API provides transactional put and get functions to store and retrieve values from an LMDB database.

  • The extended API provides many functions similar to those in Data.Map, e.g. lookup, insert, delete, foldr, and so on.

  • The View API provides a read-only snapshot of an LMDB database that can be queried from pure code.

  • The DBRef API provides a mutable variable similar to IORef that is tied to a particular key in an LMDB database.