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]
Versions [faq],,,,
Dependencies base (>=4.7 && <5), bytestring (==0.10.*), lmdb (==0.2.*), serialise (==0.2.*) [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 Sat Mar 24 22:14:34 UTC 2018
Distributions NixOS:
Downloads 2021 total (148 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2018-03-24 [all 1 reports]




Maintainer's Corner

For package maintainers and hackage trustees

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.