liveBook · Manning

Cassandra-stress

As explained in ScyllaDB in Action

cassandra-stress is a command-line benchmarking utility that generates database workloads for measuring Cassandra-compatible systems.

cassandra-stress is a command-line load-testing utility for finding how much traffic a Cassandra-compatible cluster can support. Generic tests estimate infrastructure throughput; workload-specific schemas provide more accurate results. section 11.2

Configure a representative test by:

  • Applying a separate stress keyspace so generated data does not pollute application reviews. section 11.2.1
  • Selecting one keyspace and table; run separate concurrent instances for multiple tables. section 11.2.1
  • Defining YAML column properties for value size, population, and clustering. section 11.2.1
  • Adding CQL queries that mirror how users read the table. section 11.2.1

Article-summary workload

A stress configuration targets stress.article_summaries_by_date, generates date buckets from 0 through 240, varies clustering values from 10 through 25, creates author names of 5–20 characters, scores from 1–100, and titles of 20–50 characters, then reads rows by date_bucket. section 11.2.1

keyspace: stress
table: article_summaries_by_date
columnspec:
  - name: date_bucket
    population: uniform(0..240)
  - name: id
    cluster: uniform(10..25)
  - name: author_name
    size: uniform(5..20)
  - name: score
    population: uniform(1..100)
  - name: title
    size: uniform(20..50)
queries:
  read:
    cql: SELECT * FROM article_summaries_by_date WHERE date_bucket = ?
    fields: samerow

Inspect the complete YAML configuration for the article-summary workload, including its target table, generated-value ranges, and read query. section 11.2.1

How ScyllaDB in Action covers it

How deep it goes
Explains YAML setup, table scope, generated-value controls, and representative reads, but not result analysis.
Examples
Uses a stress keyspace and article_summaries_by_date workload with bounded dates, clustering values, text sizes, scores, and reads.
What it assumes
Assumes an applicable schema and table; teaches configuration from the stress keyspace through generated columns and queries.
What you can do after
Operate/configure it with a schema, YAML data distributions, and CQL queries that approximate application traffic.
How it connects
Connects load testing with schemas, keyspaces, tables, YAML, CQL queries, and partition-key data generation.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of ScyllaDB in Action. The section links point to the parts of the book it draws on.