MBeans search demo

Use MBeans to evaluate performance for the search demo.

Procedure

  1. Change to the demos directory.

    The default location of the demos directory depends on the type of installation:

    • Package installations: /usr/share/dse/demos

    • Tarball installations: INSTALL_DIRECTORY/demos

  2. Make demos/solr_stress your current directory.

  3. Create the schema:

    pushd resources/schema &&
     ./create-schema.sh

    The following options are available:

    • CQL table creation options:

      • --ssl use SSL for table creation over cqlsh

    • Solr HTTP options:

      • -e CA_CERT_FILE: use HTTPS with the provided CA certificate

      • -E CLIENT_CERT_FILE: use the provided client certificate

      • -h HOST: hostname or IP for Solr HTTP requests

      • -a: Enable Kerberos

      • -u USERNAME: Kerberos username

      • -p PASSWORD: Kerberos password

    The script creates the schema and posts the solrconfig.xml and schema.xml files to http://localhost:8983/solr/resource/demo.solr/solrconfig.xml and http://localhost:8983/solr/resource/demo.solr/schema.xml.

    The script then creates the search index by posting to http://localhost:8983/solr/admin/cores?action=CREATE&name=demo.solr.

    You can override the script defaults by specifying command line parameters:

    -x schemafile.xml -t tableCreationFile.cql -r solrCofgFile.xml -k solrCore
  4. Run the benchmark:

    ./run-benchmark.sh [--clients=CLIENTS_COUNT] [--loops=LOOPS_COUNT] [--fetch=FETCH_SIZE] [--solrCore=SOLR_CORE] [--testData=TEST_DATA_FILE] [--url=URL1,URL2,URL3...] [--qps=QPS] [--stats=true|false] [--seed=SEED_VALUE]

    The following options are available:

    • --clients: The number of client threads to create. Default: 1

    • --loops: The number of times the commands list gets executed if running sequentially or the number of commands to run if running randomly. Default: 1

    • --fetch: Fetch size for CQL pagination (disabled by default). Only the first page is retrieved.

    • --solrCore: Search index name to run the benchmark against.

    • --testData: Name of the file that contains the test data.

    • --seed: Value to set the random generator seed to.

    • --qps: Maximum number of queries per second allowed.

    • --stats: Specifies whether to gather statics during runtime and create a csv file with the recorded values. Default: false

    • --url: A comma delimited list of servers to run the benchmark against. For example: --url=http://localhost:8983,http://192.168.10.45:8983,http://192.168.10.46:8983. Default: http://localhost:8983

    The demo creates a Search index named demo.solr and indexes 50,000 documents.

    + Example CQL commands:

    +

    ./run-benchmark.sh --url=http://localhost:8983 --testData=resources/testCqlQuery.txt --solrCore=demo.solr

    +

    ./run-benchmark.sh --url=http://localhost:8983 --testData=resources/testCqlWrite.txt --solrCore=demo.solr

    + See /demos/solr_stress/README.txt for execution modes and sample script commands.

  5. In JConsole, expand com.datastax.bdp > search > demo.solr to view the MBeans.

    The CommitMetrics and QueryMetrics MBeans are present.

  6. In JConsole, in Search > demo.solr > CommitMetrics > Operations > getLatencyPercentile, type EXECUTE in the p0 text entry box and 0.95 in the p1 text entry box. Click the getLatencyPercentile button.

    The Operation return value, 582 microseconds, appears:

    The JConsole CommitMetrics getLatencyPercentile operation return value

Was this helpful?

Give Feedback

How can we improve the documentation?

© 2025 DataStax, an IBM Company | Privacy policy | Terms of use | Manage Privacy Choices

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: +1 (650) 389-6000, info@datastax.com