The Quelea package

[Tags:bsd3, library]

Quelea is a Haskell library that helps programmers develop highly scalable applications on the top of eventually consistent NoSQL stores, such as Cassandra. You can think of Quelea as a mediator between the application programmer and the underlying NoSQL store. It understands both the application requirements and the store semantics, and helps programmers use NoSQL stores in such a way so as to maximize performance and ensure correct application behaviour, both at the same time! Among other things, Quelea library implements:

A Domain-Specific Language (DSL) that lets NoSQL application programmers declare the consistency requirements of their applications as contracts (also called specifications)

A static contract classification procedure that maps high-level application contracts to appropriate low-level consistency guarantees provided by the underlying NoSQL store, and

A run-time that runs application operations after tuning the store consistency to appropriate levels as determined by the contract classification procedure. While the implementations of DSL and the static contract classification components are largely independent of the actual NoSQL store used, the current implementation of run-time component is tailor-made to work with the Cassandra data store.

Properties

Versions 1.0.0
Dependencies base (>3 && <5), bytestring, cassandra-cql (>=0.5.0.1 && <1), cereal, containers, derive, directory, lens, mtl, optparse-applicative, process, random, template-haskell, text, time, transformers, tuple, unix, uuid, z3 (>=4.0.0), zeromq4-haskell [details]
License BSD3
Copyright 2014, KC Sivaramakrishnan
Author KC Sivaramakrishnan <http://kcsrk.info>
Maintainer Gowtham Kaki <http://gowthamk.github.io>
Category Experimental
Home page http://gowthamk.github.io/Quelea
Uploaded Sun Dec 13 22:59:12 UTC 2015 by gowtham
Distributions NixOS:1.0.0
Downloads 81 total (1 in the last 30 days)
Votes
1 []
Status Docs not available [build log]
All reported builds failed as of 2016-10-25 [all 3 reports]

Modules

  • Quelea
    • Quelea.Client
    • Quelea.ClientMonad
    • Quelea.Contract
    • Quelea.DBDriver
    • Quelea.Marshall
    • NameService
      • Quelea.NameService.LoadBalancingBroker
      • Quelea.NameService.SimpleBroker
      • Quelea.NameService.Types
    • Quelea.Shim
    • Quelea.TH
    • Quelea.Types

Downloads

Maintainer's Corner

For package maintainers and hackage trustees