GithubHelp home page GithubHelp logo

bonnefoa / elevator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from oleiade/elevator

2.0 3.0 0.0 1.36 MB

Elevator is an open source, on-disk key-value store. Provides high-performance bulk read-write operations over very large datasets while exposing a simple and efficient API.

Home Page: http://elevator.readthedocs.org

License: MIT License

Python 99.19% CSS 0.81%

elevator's Introduction

Elevator

image

Key-Value store written in Python and based on levelDB, allows high performance on-disk bulk read/write.

Allows async, multithreaded and/or remote access to a multi-leveldb backend.

Relying on the zeromq network library and msgpack serialization format, it is made to be portable between languages and platforms.

See Documentation for more details

Elevator is an open source software under the MIT license. Any hackers are welcome to supply ideas, features requests, patches, Pull requests and so on. Documentation's development page contains comprehensive info on contributing, repository layout, our release strategy, and more.

image

Dependencies

  • zmq-3.X
  • leveldb
  • pyzmq (built with zmq-3.X)
  • plyvel

Debian repository

The deb.oleiade.com debian repository exposes libzmq3, libzmq3-dev, libleveldb1 and libleveldb1-dev packages in order to ease your dependencies management. Just add the following line to your /etc/apt/sources.list:

deb http://deb.oleiade.com/debian oneiric main

Puppet

In order to ease your Elevator deployment, a puppet module has been developed. Note that it will automatically add the debian repository to your nodes.

Installation

Just:

pip install Elevator

Usage

When elevator is installed, you can then launch the server using the elevator executable. Note that a --daemon option is disposable, and allows you to run elevator server as a daemon, storing it's pid in .pid file in /tmp.

See config/elevator.conf for an example of Elevator configuration.

Example:

$ elevator --help

usage: elevator [-hdctbpwv]

Elevator command line manager

optional arguments:
  -h, --help            Show this help message and exit
  -d, --daemon          Launch elevator as a daemon
  -c, --config          Elevator config file path
  -t, --transport       Transport layer: tcp or ipc
  -b, --bind            Address the server will be binded to
  -p, --port            Port the server should listen on
  -w, --workers         Workers to be spawned count
  -v, --log-level       Log level, see python logging documentation
                        for more information :
                        http://docs.python.org/library/logging.html#logger-objects

Clients

Python: py-elevator

Go: go-elevator (Early early, so early version)

Clojure : Coming soon

C : Coming soon

Thanks

Thanks to srinikom for its leveldb-server which was a very good base to start from.

elevator's People

Contributors

thoas avatar

Stargazers

Bill Noon avatar Théo Crevon avatar

Watchers

Anthonin Bonnefoy avatar James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.