Skip to content

Cassandra abstraction layer and keyspace scaffolder for PHP developers --- ABANDONED.

License

Notifications You must be signed in to change notification settings

mjpearson/Pandra

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

== Welcome to the Pandra toolkit (0.2.1) ==

Copyright (C) 2010 Michael Pearson <[email protected]>

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 3 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

- What is it?

        Pandra (PHP-Cassandra) is a light-weight PHP based create/read/update/delete (CRUD) layer for the Cassandra distributed datastore.
        Sitting ontop of the generated Thrift Interface files, it suits as a factory patterned rapid prototyping tool.

        "Cassandra is a highly scalable, eventually consistent, distributed, structured key-value store.
         Cassandra brings together the distributed systems technologies from Dynamo and the data model from Google's BigTable.
         Like Dynamo, Cassandra is eventually consistent. Like BigTable, Cassandra provides a ColumnFamily-based data model richer than typical key/value systems.

         Cassandra was open sourced by Facebook in 2008, where it was designed by one of the authors of Amazon's Dynamo.
         In a lot of ways you can think of Cassandra as Dynamo 2.0. Cassandra is in production use at Facebook but is still under heavy development."
         - http://incubator.apache.org/cassandra/

        Pandra can be installed and interfaced in a few minutes, building your API or web service on a highly redundant datastore can be realised with relative ease.

- Key Features

        * Clear demarcation of columfamily objects from the underlying cluster connection handlers

        * Supports any number of Cassandra nodes, tweakable consistency levels

        * Extensible type definition, validation and callback layers

        * Supports UUID types

        * Flexible arrangement of Keyspaces, Column Families and Super Columns (implements ArrayAccess)

        * Schema aware and factory objects

        * Extensible Logging interface

- Dependencies

        * Cassandra >= 0.6

        * Thrift Interface (tested cassandra.thrift and pre-generated files are packaged)

        * PHP >= 5.3

        - Optional

            * Model Generation - syck yaml

            * Caching - APC or Memcached (PECL)

            * Logging - Syslog, Sendmail and FirePHP

- Download

        Latest snapshot :  git clone git://github.com/mjpearson/Pandra.git .
        - or -
        Latest stable tag : https://github.com/mjpearson/Pandra/tarball/0.2.1

- Community

        The Pandra homepage is http://www.phpgrease.net/projects/Pandra

        For feedback, bugs and general support discussion see http://groups.google.com/group/pandra-user

        Developers : http://groups.google.com/group/pandra-dev

        Github users may also log bugs directly via https://github.com/mjpearson/pandra/issues

About

Cassandra abstraction layer and keyspace scaffolder for PHP developers --- ABANDONED.

Resources

License

Stars

Watchers

Forks

Packages

No packages published