The cfs-stress tool

Performs stress testing of the Cassandra File System (CFS) layer.

Usage:
$ cfs-stress [options] cfs_directory

where cfs_directory sets where to store test files.

Note: The tool uses the listen_address defined in the cassandra.yaml. If not using localhost, add the correct IP as an additional argument:
$ stress-cfs [options] cfs_directory listen_address
Options
Short form Long form Description
-d --data-generator class Data generator to create files. Available generators: RandomDataGenerator, TextDataGenerator, ZeroDataGenerator.

The RandomDataGenerator is a fast pseudo-random data generator that delivers about 1.5 GB of data per second on a single core of Core i7 @ 2.4 GHz.

-h -help Display help.
-n --count number Total number of files read/written. Default: 100.
-o --operation R|W|WR|WRD Operation: R read, W write, WR write and read, WRD write and read and delete. Default: W
--r --streams number Maximum number of streams kept open per thread. Default 2.
-s --size number Size of each file in KB. Default 1024.
  --shared-cfs Causes all threads to share the same CFS object.
-t --threads number Number of threads. Default 8.
The cfs-stress tool is located in the tools directory:
  • Installer-Services and Package installations: /usr/share/dse/tools
  • Installer-No Services and Tarball installations: install_location/dse/tools

Example

From the tools directory:

$ ./cfs-stress cfs_directory

The output looks like:

Writing 104 MB to cfs://localhost:9160/user/pt/cfs_directory in 100 files.
progress       bytes     curr rate      avg rate    max latency
   0.0%       0.0 MB      0.0 MB/s      0.0 MB/s         ------
   0.0%       0.0 MB      0.0 MB/s      0.0 MB/s         ------
   0.0%       0.0 MB      0.0 MB/s      0.0 MB/s         ------
   0.0%       0.0 MB      0.0 MB/s      0.0 MB/s         ------
   0.0%       0.0 MB      0.0 MB/s      0.0 MB/s         ------
  32.0%      33.6 MB      2.6 MB/s      5.5 MB/s     129.554 ms
  80.0%      83.9 MB     31.4 MB/s     11.7 MB/s      10.303 ms
  82.0%      86.0 MB     48.5 MB/s     10.5 MB/s         ------
 100.0%     104.9 MB     14.5 MB/s     12.4 MB/s       0.012 ms
Data Description
progress Total progress of the stress operation.
bytes Total bytes written/read.
curr rate Current rate of bytes being written/read per second.
avg rate Average rate of bytes being written/read per second.
max latency Maximum latency in milliseconds during the current reporting window.