hedis: Client library for the Redis datastore: supports full command set, pipelining.

[ bsd3, database, library ] [ Propose Tags ] [ Report a vulnerability ]

Redis is an open source, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets. This library is a Haskell client for the Redis datastore. Compared to other Haskell client libraries it has some advantages:

Complete Redis 2.6 command set:
All Redis commands (http://redis.io/commands) are available as haskell functions, except for the MONITOR and SYNC commands. Additionally, a low-level API is exposed that makes it easy for the library user to implement further commands, such as new commands from an experimental Redis version.
Automatic Optimal Pipelining:
Commands are pipelined (http://redis.io/topics/pipelining) as much as possible without any work by the user. See http://informatikr.com/2012/redis-pipelining.html for a technical explanation of automatic optimal pipelining.
Enforced Pub/Sub semantics:
When subscribed to the Redis Pub/Sub server (http://redis.io/topics/pubsub), clients are not allowed to issue commands other than subscribing to or unsubscribing from channels. This library uses the type system to enforce the correct behavior.
Connect via TCP or Unix Domain Socket:
TCP sockets are the default way to connect to a Redis server. For connections to a server on the same machine, Unix domain sockets offer higher performance than the standard TCP connection.

For detailed documentation, see the Database.Redis module.

Changes since version 0.5.1
  • Changed return type of HDEL from Bool to Integer.

  • Some documentation updates.

Changes since version 0.5
  • New commands: DUMP, RESTORE, BITOP, BITCOUNT.

  • Removed the dependency on stm.

  • Improved performance of Queued in long transactions.

  • Minor documentation updates.

Changes since version 0.4.1
  • Added new Redis 2.6 commands, including Lua scripting support.

  • A transaction context is now created by using the multiExec function. The functions multi, exec and discard are no longer available individually.

  • Inside of a transaction, commands return their results wrapped in a composable future, called Queued.

  • The getType command (the Redis TYPE command) now has a custom return type RedisType.

  • Minor improvements and fixes to the documentation.

Modules

[Index]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.2, 0.3, 0.3.1, 0.3.2, 0.4, 0.4.1, 0.5, 0.5.1, 0.6, 0.6.1, 0.6.2, 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.6.7, 0.6.8, 0.6.9, 0.6.10, 0.7.0, 0.7.1, 0.7.2, 0.7.5, 0.7.6, 0.7.7, 0.7.8, 0.7.9, 0.7.10, 0.8.0, 0.8.1, 0.8.2, 0.8.3, 0.9.1, 0.9.2, 0.9.3, 0.9.4, 0.9.5, 0.9.6, 0.9.7, 0.9.8, 0.9.9, 0.9.10, 0.9.11, 0.9.12, 0.10.0, 0.10.1, 0.10.2, 0.10.3, 0.10.4, 0.10.6, 0.10.8, 0.10.9, 0.10.10, 0.11.0, 0.11.1, 0.12.0, 0.12.1, 0.12.2, 0.12.3, 0.12.4, 0.12.5, 0.12.6, 0.12.7, 0.12.8, 0.12.9, 0.12.10, 0.12.11, 0.12.12, 0.12.13, 0.12.14, 0.12.15, 0.13.0, 0.13.1, 0.14.0, 0.14.1, 0.14.2, 0.14.3, 0.14.4, 0.15.0, 0.15.1, 0.15.2
Dependencies attoparsec (>=0.10 && <0.11), base (>=4 && <5), BoundedChan (>=1.0 && <1.1), bytestring (>=0.9 && <0.10), bytestring-lexing (>=0.4 && <0.5), mtl (>=2 && <3), network (>=2 && <3), resource-pool (>=0.2 && <0.3), time, vector (>=0.9 && <0.10) [details]
License BSD-3-Clause
Copyright Copyright (c) 2011 Falko Peters
Author Falko Peters
Maintainer falko.peters@gmail.com
Category Database
Home page https://github.com/informatikr/hedis
Bug tracker https://github.com/informatikr/hedis/issues
Source repo head: git clone https://github.com/informatikr/hedis
Uploaded by FalkoPeters at 2012-08-30T21:04:53Z
Distributions Debian:0.12.14, FreeBSD:0.6.9, LTSHaskell:0.15.2, NixOS:0.15.2, Stackage:0.15.2
Reverse Dependencies 58 direct, 31 indirect [details]
Downloads 73075 total (168 in the last 30 days)
Rating 2.5 (votes: 4) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]