{
  "schema_version": 2,
  "id": "operate/rs/clusters/optimize/memtier-benchmark",
  "title": "Benchmarking Redis Software",
  "url": "https://redis.io/docs/latest/operate/rs/clusters/optimize/memtier-benchmark/",
  "summary": "Use the `memtier_benchmark` tool to perform a performance benchmark of Redis Software.",
  "tags": [
    "docs",
    "operate",
    "rs"
  ],
  "last_updated": "2026-10-01T15:48:36+01:00",
  "page_type": "content",
  "content_hash": "41b007a20616eb86e2e95ec06e1e8bc9dc7795f6110174032666a8c4761a323e",
  "sections": [
    {
      "id": "overview",
      "title": "Overview",
      "role": "overview",
      "text": "Use the `memtier_benchmark` tool to perform a performance benchmark of Redis Software.\n\nPrerequisites:\n\n- Redis Software installed\n- A cluster configured\n- A database created\n\nFor help with the prerequisites, see the [Redis Software quickstart](https://redis.io/docs/latest/operate/rs/installing-upgrading/quickstarts/redis-enterprise-software-quickstart).\n\nIt is recommended to run memtier_benchmark on a separate node that is\nnot part of the cluster being tested. If you run it on a node of the\ncluster, be mindful that it affects the performance of both the\ncluster and memtier_benchmark.\n\n[code example]\n\nThis command instructs memtier_benchmark to connect to your Redis\nEnterprise database and generates a load doing the following:\n\n- A 50/50 Set to Get ratio\n- Each object has random data in the value"
    },
    {
      "id": "populate-a-database-with-testing-data",
      "title": "Populate a database with testing data",
      "role": "content",
      "text": "If you need to populate a database with some test data for a proof of\nconcept, or failover testing, etc. here is an example for you.\n\n[code example]\n\nThis command instructs memtier_benchmark to connect to your Redis\nEnterprise database and generates a load doing the following:\n\n- Write objects only, no reads\n- A 500 byte object\n- Each object has random data in the value\n- Each key has a random pattern, then a colon, followed by a\n    random pattern.\n\nRun this command until it fills up your database to where you want it\nfor testing. The easiest way to check is on the database metrics page.\n\n![](https://redis.io/docs/latest/images/rs/memtier_metrics_page.png)\n\nAnother use for memtier_benchmark is to populate a database with data\nfor failure testing."
    }
  ],
  "examples": [
    {
      "id": "overview-ex0",
      "language": "sh",
      "code": "/opt/redislabs/bin/memtier_benchmark -s $DB_HOST -p $DB_PORT -a $DB_PASSWORD -t 4 -R --ratio=1:1",
      "section_id": "overview"
    },
    {
      "id": "populate-a-database-with-testing-data-ex0",
      "language": "sh",
      "code": "/opt/redislabs/bin/memtier_benchmark -s $DB_HOST -p $DB_PORT -a $DB_PASSWORD -R -n allkeys -d 500 --key-pattern=P:P --ratio=1:0",
      "section_id": "populate-a-database-with-testing-data"
    }
  ]
}
