cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jbel...@apache.org
Subject svn commit: r925408 - /cassandra/branches/cassandra-0.6/contrib/py_stress/README.txt
Date Fri, 19 Mar 2010 20:27:52 GMT
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



Mime
View raw message