Author: jbellis
Date: Fri Mar 19 20:27:52 2010
New Revision: 925408
URL: http://svn.apache.org/viewvc?rev=925408&view=rev
Log:
add py_stress README by Brandon Williams
Added:
cassandra/branches/cassandra-0.6/contrib/py_stress/README.txt (with props)
Added: cassandra/branches/cassandra-0.6/contrib/py_stress/README.txt
URL:
http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.6/contrib/py_stress/README.txt?rev=925408&view=auto
==============================================================================
--- cassandra/branches/cassandra-0.6/contrib/py_stress/README.txt (added)
+++ cassandra/branches/cassandra-0.6/contrib/py_stress/README.txt Fri Mar 19
20:27:52 2010
@@ -0,0 +1,65 @@
+stress.py
+=========
+
+Description
+-----------
+
+stress.py is a tool for benchmarking and load testing a Cassandra cluster.
+
+Prequisites
+-----------
+
+Any of the following will work:
+
+ * python2.4 w/multiprocessing
+ * python2.5 w/multiprocessing
+ * python2.6 (multiprocessing is in the stdlib)
+
+You can opt not to use multiprocessing and threads will be used instead, but
+python's GIL will be the limiting factor, not Cassandra, so the results will
not be
+accurate. A warning to this effect will be issued each time you run the
program.
+
+Additionally, you will need to generate the thrift bindings for python: run
+'ant gen-thrift-py' in the top-level Cassandra directory.
+
+stress.py expects to use the default ColumnFamily definitions in
storage-conf.xml
+
+Usage
+-----
+
+There are three different modes of operation:
+
+ * inserting (loading test data)
+ * reading
+ * range slicing (only works with the OrderPreservingPartioner)
+
+Important options:
+ -o or --operation
+ Sets the operation mode, one of 'insert', 'read', or 'rangeslice'
+ -n or --num-keys:
+ the number of rows to insert/read/slice
+ -d or --nodes:
+ the node(s) to perform the test against. For multiple nodes, supply a
+ comma-separated list without spaces, ex:
cassandra1,cassandra2,cassandra3
+ -y or --family-type:
+ Sets the ColumnFamily type. One of 'regular', or 'super'. If using
super,
+ you probably want to set the -u option also.
+ -c or --columns:
+ the number of columns per row, defaults to 5
+ -u or --supercolumns:
+ use the number of supercolumns specified NOTE: you must set the -y
+ option appropriately, or this option has no effect.
+ -g or --get-range-slice-count:
+ This is only used for the rangeslice operation and will *NOT* work with
+ the RandomPartioner. You must set the OrderPreservingPartioner in your
+ storage-conf.xml (note that you will need to wipe all existing data
+ when switching partioners.) This option sets the number of rows to
+ slice at a time and defaults to 1000.
+ -r or --random:
+ Only used for reads. By default, stress.py will perform reads on rows
+ with a guassian distribution, which will cause some repeats. Setting
+ this option makes the reads completely random instead.
+ -i or --progress-interval:
+ The interval, in seconds, at which progress will be output.
+
+Remember that you must perform inserts before performing reads or range slices.
Propchange: cassandra/branches/cassandra-0.6/contrib/py_stress/README.txt
------------------------------------------------------------------------------
svn:eol-style = native