/usr/share/doc/python-pycassa/README.mkd is in python-pycassa 1.11.1-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 | pycassa
=======
[![Build Status](https://secure.travis-ci.org/pycassa/pycassa.png?branch=master)](http://travis-ci.org/pycassa/pycassa)
pycassa is a Thrift-based python client library for [Apache Cassandra](http://cassandra.apache.org)
**pycassa does not support CQL** or Cassandra's native protocol, which are a
replacement for the Thrift interface that pycassa is based on. If you are
starting a new project, **it is highly recommended that you use the newer**
[DataStax python driver](https://github.com/datastax/python-driver) instead
of pycassa.
pycassa is open source under the [MIT license](http://www.opensource.org/licenses/mit-license.php).
Documentation
-------------
Documentation can be found here:
[http://pycassa.github.com/pycassa/](http://pycassa.github.com/pycassa/)
It includes [installation instructions](http://pycassa.github.com/pycassa/installation.html),
a [tutorial](http://pycassa.github.com/pycassa/tutorial.html),
[API documentation](http://pycassa.github.com/pycassa/api/index.html),
and a [change log](http://pycassa.github.com/pycassa/changelog.html).
Getting Help
------------
IRC:
* Use the #cassandra channel on irc.freenode.net. If you don't have an IRC client,
you can use [freenode's web based client](http://webchat.freenode.net/?channels=#cassandra).
Mailing List:
* User list: [http://groups.google.com/group/pycassa-discuss](http://groups.google.com/group/pycassa-discuss)
* Developer list: [http://groups.google.com/group/pycassa-devel](http://groups.google.com/group/pycassa-devel)
Installation
------------
If pip is available, you can install the lastest pycassa release
with:
pip install pycassa
If you want to install from a source checkout, make sure you have Thrift
installed, and run setup.py as a superuser:
pip install thrift
python setup.py install
Basic Usage
-----------
To get a connection pool, pass a Keyspace and an optional list of servers:
~~~~~~ {python}
>>> import pycassa
>>> pool = pycassa.ConnectionPool('Keyspace1') # Defaults to connecting to the server at 'localhost:9160'
>>>
>>> # or, we can specify our servers:
>>> pool = pycassa.ConnectionPool('Keyspace1', server_list=['192.168.2.10'])
~~~~~~
To use the standard interface, create a ColumnFamily instance.
~~~~~~ {python}
>>> pool = pycassa.ConnectionPool('Keyspace1')
>>> cf = pycassa.ColumnFamily(pool, 'Standard1')
>>> cf.insert('foo', {'column1': 'val1'})
>>> cf.get('foo')
{'column1': 'val1'}
~~~~~~
insert() will also update existing columns:
~~~~~~ {python}
>>> cf.insert('foo', {'column1': 'val2'})
>>> cf.get('foo')
{'column1': 'val2'}
~~~~~~
You may insert multiple columns at once:
~~~~~~ {python}
>>> cf.insert('bar', {'column1': 'val3', 'column2': 'val4'})
>>> cf.multiget(['foo', 'bar'])
{'foo': {'column1': 'val2'}, 'bar': {'column1': 'val3', 'column2': 'val4'}}
>>> cf.get_count('bar')
2
~~~~~~
get_range() returns an iterable. You can use list() to convert it to a list:
~~~~~~ {python}
>>> list(cf.get_range())
[('bar', {'column1': 'val3', 'column2': 'val4'}), ('foo', {'column1': 'val2'})]
>>> list(cf.get_range(row_count=1))
[('bar', {'column1': 'val3', 'column2': 'val4'})]
~~~~~~
You can remove entire keys or just a certain column:
~~~~~~ {python}
>>> cf.remove('bar', columns=['column1'])
>>> cf.get('bar')
{'column2': 'val4'}
>>> cf.remove('bar')
>>> cf.get('bar')
Traceback (most recent call last):
...
pycassa.NotFoundException: NotFoundException()
~~~~~~
See the [tutorial](http://pycassa.github.com/pycassa/tutorial.html#connecting-to-cassandra) for more details.
|