YugabyteDB
    • Star us on Github YugabyteDB Github
    • Join us on Slack YugabyteDB Community Slack
    • Start Now
      • YugabyteDB Managed
        YugabyteDB ManagedTry our fully managed cloud DBaaS for free.No credit card requiredSign up
      • YugabyteDB
        YugabyteDBTry our open source distributed SQL database on your laptop.Download
    • Products
      • YugabyteDB
        YugabyteDBThe open source distributed SQL database
      • YugabyteDB Anywhere
        YugabyteDB AnywhereSelf-managed cloud DBaaS
      • YugabyteDB Managed
        YugabyteDB ManagedFully managed cloud DBaaS
    • Integrations
    • FAQ
    • Releases
      • YugabyteDB
        YugabyteDB
      • YugabyteDB Anywhere
        YugabyteDB Anywhere
      • YugabyteDB Managed
        YugabyteDB Managed
      • YugabyteDB Voyager
        YugabyteDB Voyager
    • v2.17 Preview
      v2.18 STS v2.17 Preview v2.16 STS v2.14 LTS v2.12 v2.8 Unsupported versions
    Docs Menu
    • v2.17 Preview
      v2.18 STS v2.17 Preview v2.16 STS v2.14 LTS v2.12 v2.8 Unsupported versions
    • Docs Home
    • YugabyteDB
    • Quick Start
    • Explore
      • SQL features
        • SQL feature support
        • PostgreSQL compatibility
        • Schemas and tables
        • Data types
        • Data manipulation
        • Queries and joins
        • Expressions and operators
        • Stored procedures
        • Triggers
        • Advanced features
          • Cursors
          • Table partitioning
          • Views
          • Savepoints
          • Collations
          • Foreign data wrappers
        • Going beyond SQL
          • Follower reads
          • Tablespaces
        • PostgreSQL extensions
      • Continuous availability
        • HA during failures
        • HA of transactions
      • Horizontal scalability
        • Scaling transactions
        • Sharding data
      • Transactions
        • Distributed transactions
        • Isolation levels
        • Explicit locking
      • Indexes and constraints
        • Primary keys
        • Foreign keys
        • Secondary indexes
        • Unique indexes
        • Partial indexes
        • Expression indexes
        • Covering indexes
        • GIN indexes
        • Other constraints
      • JSON support
      • Multi-region deployments
        • Synchronous (3+ regions)
        • Row-level geo-partitioning
        • xCluster (2+ regions)
        • Read replicas
      • Query tuning
        • Introduction
        • Get query statistics
        • View live queries
        • View terminated queries
        • View COPY status
        • View CREATE INDEX status
        • Analyze queries
        • Optimize YSQL queries
      • Cluster management
        • Point-in-time recovery
      • Change data capture (CDC)
        • Overview
        • Debezium connector
        • Get started
        • Monitor
        • Environments
          • Amazon MSK
          • Azure Event Hubs
          • Confluent Cloud
          • Redpanda
      • Security
      • Observability
        • Prometheus integration
        • Grafana dashboard
    • Develop
      • Build an application
        • Before you begin
        • Java
        • Go
        • Python
        • Node.js
        • C
        • C++
        • C#
        • Ruby
        • Rust
        • PHP
      • Learn app development
        • 1. SQL vs NoSQL
        • 2. Data modeling
        • 3. Data types
        • 4. Transactions
          • Transaction retries
          • Performance tuning
          • Global applications
          • Error codes
        • 5. Aggregations
        • 6. Batch operations
        • 7. Date and time
        • 8. Strings and text
        • 9. TTL for data expiration
      • Drivers and ORMs
        • Smart drivers
        • Java
          • Connect an app
          • Use an ORM
        • Go
          • Connect an app
          • Use an ORM
        • Python
          • Connect an app
          • Use an ORM
        • Node.js
          • Connect an app
          • Use an ORM
        • C
          • Connect an app
        • C++
          • Connect an app
        • C#
          • Connect an app
          • Use an ORM
        • Ruby
          • Connect an app
          • Use an ORM
        • Rust
          • Use an ORM
        • PHP
          • Connect an app
          • Use an ORM
        • Scala
          • Connect an app
        • Build apps using ORMs
          • Java
          • Go
          • Python
          • Node.js
          • C#
          • Rust
          • PHP
      • Real-world examples
        • Yugastore
          • Install Yugastore
        • IoT Fleet Management
      • Best practices
      • Quality of service
        • Rate limiting connections
        • Write-heavy workloads
        • Transaction priorities
      • Cloud-native development
        • Codespaces
        • Gitpod
    • Migrate
      • YugabyteDB Voyager
        • Install
        • Migration steps
        • Performance
        • Known issues
          • General
          • MySQL
          • Oracle
          • PostgreSQL
          • MySQL and Oracle
        • Reference
          • yb-voyager CLI
          • Data modeling
          • Data type mapping
        • What's new
    • Secure
      • Security checklist
      • Enable authentication
        • Enable users
        • Create login profiles
        • Configure client authentication
      • Authentication methods
        • Password authentication
        • LDAP authentication
        • Host-based authentication
        • Trust authentication
      • Role-based access control
        • Overview
        • Manage users and roles
        • Grant privileges
        • Row-level security
        • Column-level security
      • Encryption in transit
        • Create server certificates
        • Enable server-to-server encryption
        • Enable client-to-server encryption
        • Connect to clusters
        • TLS and authentication
      • Encryption at rest
      • Column-level encryption
      • Audit logging
        • Trace statements
        • Configure audit logging
        • Session-level audit logging
        • Object-level audit logging
      • Vulnerability disclosure policy
    • Launch and Manage
      • Deploy
        • Deployment checklist
        • Manual deployment
          • 1. System configuration
          • 2. Install software
          • 3. Start YB-Masters
          • 4. Start YB-TServers
          • 5. Verify deployment
        • Kubernetes
          • Single-zone
            • Open Source
            • Amazon EKS
            • Google Kubernetes Engine
            • Azure Kubernetes Service
          • Multi-zone
            • Amazon EKS
            • Google Kubernetes Engine
          • Multi-cluster
            • Google Kubernetes Engine
          • Best practices
          • Connect Clients
        • Public clouds
          • Amazon Web Services
          • Google Cloud Platform
          • Microsoft Azure
        • Multi-DC deployments
          • Three+ data center (3DC)
          • xCluster
          • Read replicas
      • Manage
        • Backup and restore
          • Export and import
          • Distributed snapshots
          • Point-in-time recovery
        • Migrate data
          • Bulk export
          • Bulk export YCQL
          • Bulk import
        • Change cluster configuration
        • Diagnostics reporting
        • Upgrade a deployment
      • Monitor
        • Metrics
          • Throughput+latency metrics
          • Connection metrics
          • Cache and storage metrics
          • Raft metrics
          • YB-Master metrics
          • Replication metrics
      • Troubleshoot
        • Cluster-level issues
          • YCQL API connection issues
          • YEDIS API connection Issues
          • Recover YB-TServer and YB-Master
          • Replace a failed YB-TServer
          • Replace a failed YB-Master
          • Manual remote bootstrap of failed peer
          • Recover YB-TServer from crash loop
          • Performance issues
        • Node-level issues
          • Check servers
          • Inspect logs
          • System statistics
          • Disk failure
          • Common error messages
    • Benchmark
      • TPC-C
      • sysbench
      • YCSB
      • Key-value workload
      • Large datasets
      • Scalability
        • Scaling queries
      • Resilience
        • Jepsen testing
    • Reference
      • Architecture
        • Design goals
        • Key concepts
          • Universe
          • YB-TServer service
          • YB-Master service
        • Core functions
          • Universe creation
          • Table creation
          • Write I/O path
          • Read I/O path
          • High availability
        • Layered architecture
        • Query layer
          • Overview
        • DocDB transactions layer
          • Overview
          • Transaction isolation levels
          • Concurrency control
          • Read Committed
          • Transaction priorities
          • Single-row transactions
          • Distributed transactions
          • Transactional I/O path
        • DocDB sharding layer
          • Hash and range sharding
          • Tablet splitting
          • Colocated tables
        • DocDB replication layer
          • Synchronous
          • xCluster
          • Read replicas
          • Change data capture (CDC)
        • DocDB storage layer
          • Persistence
          • Performance
      • APIs
        • YCQL
          • Cassandra compatibility
          • ALTER KEYSPACE
          • ALTER ROLE
          • ALTER TABLE
          • CREATE INDEX
          • CREATE KEYSPACE
          • CREATE ROLE
          • CREATE TABLE
          • CREATE TYPE
          • DROP INDEX
          • DROP KEYSPACE
          • DROP ROLE
          • DROP TABLE
          • DROP TYPE
          • GRANT PERMISSION
          • GRANT ROLE
          • REVOKE PERMISSION
          • REVOKE ROLE
          • USE
          • INSERT
          • SELECT
          • EXPLAIN
          • UPDATE
          • DELETE
          • TRANSACTION
          • TRUNCATE
          • Simple expressions
          • Subscripted expressions
          • Function call
          • Operators
          • BLOB
          • BOOLEAN
          • Collection
          • FROZEN
          • INET
          • Integer and counter
          • Non-integer
          • TEXT
          • DATE, TIME, and TIMESTAMP
          • UUID and TIMEUUID
          • JSONB
          • Date and time
          • BATCH
        • YSQL
          • The SQL language
            • SQL statements
              • ABORT
              • ALTER DATABASE
              • ALTER DEFAULT PRIVILEGES
              • ALTER DOMAIN
              • ALTER FOREIGN DATA WRAPPER
              • ALTER FOREIGN TABLE
              • ALTER FUNCTION
              • ALTER GROUP
              • ALTER POLICY
              • ALTER PROCEDURE
              • ALTER ROLE
              • ALTER SEQUENCE
              • ALTER SERVER
              • ALTER TABLE
              • ALTER USER
              • ANALYZE
              • BEGIN
              • CALL
              • CLOSE
              • COMMENT
              • COMMIT
              • COPY
              • CREATE AGGREGATE
              • CREATE CAST
              • CREATE DATABASE
              • CREATE DOMAIN
              • CREATE EXTENSION
              • CREATE FOREIGN DATA WRAPPER
              • CREATE FOREIGN TABLE
              • CREATE FUNCTION
              • CREATE GROUP
              • CREATE INDEX
              • CREATE MATERIALIZED VIEW
              • CREATE OPERATOR
              • CREATE OPERATOR CLASS
              • CREATE POLICY
              • CREATE PROCEDURE
              • CREATE ROLE
              • CREATE RULE
              • CREATE SCHEMA
              • CREATE SEQUENCE
              • CREATE SERVER
              • CREATE TABLE
              • CREATE TABLE AS
              • CREATE TRIGGER
              • CREATE TYPE
              • CREATE USER
              • CREATE USER MAPPING
              • CREATE VIEW
              • DEALLOCATE
              • DECLARE
              • DELETE
              • DO
              • DROP AGGREGATE
              • DROP CAST
              • DROP DATABASE
              • DROP DOMAIN
              • DROP EXTENSION
              • DROP FOREIGN DATA WRAPPER
              • DROP FOREIGN TABLE
              • DROP FUNCTION
              • DROP GROUP
              • DROP INDEX
              • DROP MATERIALIZED VIEW
              • DROP OPERATOR
              • DROP OPERATOR CLASS
              • DROP OWNED
              • DROP POLICY
              • DROP PROCEDURE
              • DROP ROLE
              • DROP RULE
              • DROP SCHEMA
              • DROP SEQUENCE
              • DROP SERVER
              • DROP TABLE
              • DROP TRIGGER
              • DROP TYPE
              • DROP USER
              • END
              • EXECUTE
              • EXPLAIN
              • FETCH
              • GRANT
              • IMPORT FOREIGN SCHEMA
              • INSERT
              • LOCK
              • MOVE
              • PREPARE
              • REASSIGN OWNED
              • REFRESH MATERIALIZED VIEW
              • RELEASE SAVEPOINT
              • RESET
              • REVOKE
              • ROLLBACK
              • ROLLBACK TO SAVEPOINT
              • SAVEPOINT
              • SELECT
              • SET
              • SET CONSTRAINTS
              • SET ROLE
              • SET SESSION AUTHORIZATION
              • SET TRANSACTION
              • SHOW
              • SHOW TRANSACTION
              • START TRANSACTION
              • TRUNCATE
              • UPDATE
              • VALUES
            • Temporary schema-objects
              • Temp tables, views, sequences, and indexes
              • Temp schema-objects of all kinds
              • Globality of metadata and privacy of use of temp objects
              • Paradigm for creating temporary objects
            • WITH clause
              • WITH clause—SQL syntax and semantics
              • Recursive CTE
              • Case study: traversing an employee hierarchy
              • Traversing general graphs
                • Graph representation
                • Common code
                • Undirected cyclic graph
                • Directed cyclic graph
                • Directed acyclic graph
                • Rooted tree
                • Unique containing paths
                • Stress testing find_paths()
              • Case study: Bacon Numbers from IMDb
                • Bacon numbers for synthetic data
                • Bacon numbers for IMDb data
          • Transaction model for top-level SQL statements
          • Names and identifiers
          • Name resolution in top-level SQL
          • Cursors
          • Built-in functions and operators
            • Aggregate functions
              • Informal functionality overview
              • Invocation syntax and semantics
              • Grouping sets, rollup, cube
              • Per function signature and purpose
                • avg(), count(), max(), min(), sum()
                • array_agg(), string_agg(), jsonb_agg(), jsonb_object_agg()
                • bit_and(), bit_or(), bool_and(), bool_or()
                • variance(), var_pop(), var_samp(), stddev(), stddev_pop(), stddev_samp()
                • linear regression
                  • covar_pop(), covar_samp(), corr()
                  • regr_%()
                • mode(), percentile_disc(), percentile_cont()
                • rank(), dense_rank(), percent_rank(), cume_dist()
              • Case study: percentile_cont() and the "68–95–99.7" rule
              • Case study: linear regression on COVID data
                • Download the COVIDcast data
                • Ingest the COVIDcast data
                  • Inspect the COVIDcast data
                  • Copy the .csv files to staging tables
                  • Check staged data conforms to the rules
                  • Join the staged data into a single table
                  • SQL scripts
                    • Create cr_staging_tables()
                    • Create cr_copy_from_scripts()
                    • Create assert_assumptions_ok()
                    • Create xform_to_covidcast_fb_survey_results()
                    • ingest-the-data.sql
                • Analyze the COVIDcast data
                  • symptoms vs mask-wearing by day
                  • Data for scatter-plot for 21-Oct-2020
                  • Scatter-plot for 21-Oct-2020
                  • SQL scripts
                    • analysis-queries.sql
                    • synthetic-data.sql
            • currval()
            • Geo-partitioning helper functions
              • yb_is_local_table()
              • yb_server_cloud()
              • yb_server_region()
              • yb_server_zone()
            • lastval()
            • nextval()
            • setval()
            • Window functions
              • Informal functionality overview
              • Invocation syntax and semantics
              • Per function signature and purpose
                • row_number(), rank() and dense_rank()
                • percent_rank(), cume_dist() and ntile()
                • first_value(), nth_value(), last_value()
                • lag(), lead()
                • Tables for the code examples
                  • table t1
                  • table t2
                  • table t3
                  • table t4
              • Case study: analyzing a normal distribution
                • Bucket allocation scheme
                • do_clean_start.sql
                • cr_show_t4.sql
                • cr_dp_views.sql
                • cr_int_views.sql
                • cr_pr_cd_equality_report.sql
                • cr_bucket_using_width_bucket.sql
                • cr_bucket_dedicated_code.sql
                • do_assert_bucket_ok
                • cr_histogram.sql
                • cr_do_ntile.sql
                • cr_do_percent_rank.sql
                • cr_do_cume_dist.sql
                • do_populate_results.sql
                • do_report_results.sql
                • do_compare_dp_results.sql
                • do_demo.sql
                • Reports
                  • Histogram report
                  • dp-results
                  • compare-dp-results
                  • int-results
            • yb_hash_code()
          • User-defined subprograms and anonymous blocks
            • «Commit» in user-defined subprograms
            • Subprogram attributes
              • «Depends on extension» semantics
              • Alterable subprogram attributes
              • Alterable function-only attributes
                • Immutable function examples
            • «language sql» subprograms
            • «language plpgsql» subprograms
              • Create-time and execution model
              • plpgsql syntax and semantics
            • Subprogram overloading
            • Variadic and polymorphic subprograms
            • Name resolution in subprograms
            • The pg_proc catalog table
          • Data types
            • Array
              • array[] constructor
              • Literals
                • Text typecasting and literals
                • Array of primitive values
                • Row
                • Array of rows
              • FOREACH loop (PL/pgSQL)
              • array of DOMAINs
              • Functions and operators
                • ANY and ALL
                • Array comparison
                • Array slice operator
                • Array concatenation
                • Array properties
                • array_agg(), unnest(), generate_subscripts()
                • array_fill()
                • array_position(), array_positions()
                • array_remove()
                • array_replace() / set value
                • array_to_string()
                • string_to_array()
            • Binary
            • Boolean
            • Character
            • Date and time
              • Conceptual background
              • Section contents
              • Timezones and UTC offsets
                • Catalog views
                • Extended_timezone_names
                  • Unrestricted full projection
                  • Real timezones with DST
                  • Real timezones no DST
                  • Synthetic timezones no DST
                • Offset/timezone-sensitive operations
                  • Timestamptz to/from timestamp conversion
                  • Pure 'day' interval arithmetic
                • Four ways to specify offset
                  • Name-resolution rules
                    • 1 case-insensitive resolution
                    • 2 ~names.abbrev never searched
                    • 3 'set timezone' string not resolved in ~abbrevs.abbrev
                    • 4 ~abbrevs.abbrev before ~names.name
                    • Helper functions
                • Syntax contexts for offset
                • Recommended practice
              • Typecasting between date-time and text-values
              • Semantics of the date-time data types
                • Date data type
                • Time data type
                • Plain timestamp and timestamptz
                • Interval data type
                  • Interval representation
                    • Ad hoc examples
                    • Representation model
                  • Interval value limits
                  • Declaring intervals
                  • Justify() and extract(epoch...)
                  • Interval arithmetic
                    • Interval-interval comparison
                    • Interval-interval addition and subtraction
                    • Interval-number multiplication
                    • Moment-moment overloads of "-"
                    • Moment-interval overloads of "+" and "-"
                  • Custom interval domains
                  • Interval utility functions
              • Typecasting between date-time datatypes
              • Operators
                • Test comparison overloads
                • Test addition overloads
                • Test subtraction overloads
                • Test multiplication overloads
                • Test division overloads
              • General-purpose functions
                • Creating date-time values
                • Manipulating date-time values
                • Current date-time moment
                • Delaying execution
                • Miscellaneous
                  • Function age()
                  • Function extract() | date_part()
                  • Implementations that model the overlaps operator
              • Formatting functions
              • Case study: SQL stopwatch
              • Download & install the date-time utilities
            • JSON
              • JSON literals
              • Primitive and compound data types
              • Code example conventions
              • Indexes and check constraints
              • Functions & operators
                • ::jsonb, ::json, ::text (typecast)
                • ->, ->>, #>, #>> (JSON subvalues)
                • - and #- (remove)
                • || (concatenation)
                • = (equality)
                • @> and <@ (containment)
                • ? and ?| and ?& (key or value existence)
                • array_to_json()
                • jsonb_agg()
                • jsonb_array_elements()
                • jsonb_array_elements_text()
                • jsonb_array_length()
                • jsonb_build_object()
                • jsonb_build_array()
                • jsonb_each()
                • jsonb_each_text()
                • jsonb_extract_path()
                • jsonb_extract_path_text() and json_extract_path_text()
                • jsonb_object()
                • jsonb_object_agg()
                • jsonb_object_keys()
                • jsonb_populate_record()
                • jsonb_populate_recordset()
                • jsonb_pretty()
                • jsonb_set() and jsonb_insert()
                • jsonb_strip_nulls()
                • jsonb_to_record()
                • jsonb_to_recordset()
                • jsonb_typeof()
                • row_to_json()
                • to_jsonb()
            • Money
            • Numeric
            • Range
            • Serial
            • UUID
          • Keywords
          • Reserved names
      • CLIs
        • ysqlsh
          • Meta-commands
            • pset options
            • Examples
        • ycqlsh
        • yb-admin
        • yb-ts-cli
        • ysql_dump
        • ysql_dumpall
        • yb-ctl
        • yb-docker-ctl
      • Configuration
        • yb-tserver
        • yb-master
        • yugabyted
        • Default ports
      • Drivers and ORMs
        • JDBC Drivers
        • Node.js Drivers
        • C# Drivers
        • Go Drivers
        • Python Drivers
        • Client drivers for YSQL
        • Client drivers for YCQL
      • Third party tools
        • pgAdmin
        • Apache Superset
        • Arctype
        • DBeaver
        • TablePlus
        • DbSchema
        • SQL Workbench/J
        • Cassandra Workbench
      • Sample datasets
        • Chinook
        • Northwind
        • PgExercises
        • SportsDB
        • Retail Analytics
      • Misc
        • YEDIS
          • Quick start
          • Develop
            • Build an application
            • C#
            • C++
            • Go
            • Java
            • NodeJS
            • Python
          • API reference
            • APPEND
            • AUTH
            • CONFIG
            • CREATEDB
            • DELETEDB
            • LISTDB
            • SELECT
            • DEL
            • ECHO
            • EXISTS
            • EXPIRE
            • EXPIREAT
            • FLUSHALL
            • FLUSHDB
            • GET
            • GETRANGE
            • GETSET
            • HDEL
            • HEXISTS
            • HGET
            • HGETALL
            • HINCRBY
            • HKEYS
            • HLEN
            • HMGET
            • HMSET
            • HSET
            • HSTRLEN
            • HVALS
            • INCR
            • INCRBY
            • KEYS
            • MONITOR
            • PEXPIRE
            • PEXPIREAT
            • PTTL
            • ROLE
            • SADD
            • SCARD
            • RENAME
            • SET
            • SETEX
            • PSETEX
            • SETRANGE
            • SISMEMBER
            • SMEMBERS
            • SREM
            • STRLEN
            • ZRANGE
            • TSADD
            • TSCARD
            • TSGET
            • TSLASTN
            • TSRANGEBYTIME
            • TSREM
            • TSREVRANGEBYTIME
            • TTL
            • ZADD
            • ZCARD
            • ZRANGEBYSCORE
            • ZREM
            • ZREVRANGE
            • ZSCORE
            • PUBSUB
            • PUBLISH
            • SUBSCRIBE
            • UNSUBSCRIBE
            • PSUBSCRIBE
            • PUNSUBSCRIBE
        • Legal
          • Third-party software
    • Contribute
      • Core database
        • Contribution checklist
        • Build the source
        • Configure a CLion project
        • Build and test
        • Coding style
      • Documentation
        • Docs checklist
        • Docs layout
        • Build the docs
          • Editor setup
        • Edit the docs
          • Docs page structure
          • Widgets and shortcodes
          • Syntax diagrams
          • Page with elements
        • Style guide
    • Join our community
      • Slack
      • Yugabyte University
      • GitHub
      • Yugabyte Friday Tech Talks
      • Forum
    • Contact Support
    1. Home
    2. Benchmark
    Benchmark YugabyteDB

    Benchmark YugabyteDB

    • Contribute
      Report a doc issue Suggest new content Edit this page Contributor guide
    TPC-C
    Test performance for concurrent transactions with TPC-C.
    YCSB
    Test performance using the Yahoo Cloud Serving Benchmark.
    sysbench
    Test performance using sysbench.
    Key-value workload
    Test performance with key-value workloads.
    Large datasets
    Test performance with large datasets.
    Scalability
    Test throughput scalability.
    Resilience
    Test resilience under failure conditions created by the Jepsen test suite.
    YugabyteDB
    © 2023 Yugabyte, Inc. All Rights ReservedPrivacy Policy | Terms of Service