Skip to main content

A powerful, model based Cassandra wrapper for Python.

Project description

https://travis-ci.org/gradfly/maelstrom.svg?branch=develop

A model based database library for Apache Cassandra built on top of DataStax Python Driver. This library has tested support for Python 2.7.

Installation

Installing through pip is recommended:

$ pip install maelstrom-py

You must have setuptools installed prior to installation. To install the package manually please refer to our installation guide.

Get Started

Example usage of Maelstrom:

from uuid import uuid4
import maelstrom
from maelstrom.base import Base
      from maelstrom.lookup import import LookUp

#ip1 and ip2 are IP address of some, but not necessarily all, nodes of your Cassandra cluster.
maelstrom.start([ip1, ip2])

class User(Base):

  __tablename__ = "users"

  defaults = {
    'id' = uuid4(),
    'name' = '',
    'email' = '',
  }

  lookups = ["email"]

  def __init__(self, *args, **kwargs):
    self.update_data(**self.defaults)
    Base.__init__(self, *arks, **kwargs)

#constructs table in the specified keyspace
User.build()
LookUp.build()

new_user = User(name = "Joe", email="example@email.com")
new_user.commit()

get_user = Account.get_by_lookup("example@email.com")

maelstrom.stop()

Documentation

TODO

License

Copyright 2014 Matt Morse, Joe Peacock and contributors

Maelstrom is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for maelstrom-py, version 0.1.32
Filename, size File type Python version Upload date Hashes
Filename, size maelstrom-py-0.1.32.tar.gz (9.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page