YugabyteDB is a full-featured, ACID-compliant distributed SQL database that not only scales writes horizontally and self-heals from failures but also performs distributed query execution through "code shipping" (aka pushdowns). It supports range sharding along with the ability to pre-split a range into multiple shards, but hash sharding is the default option for horizontal scaling. YugabyteDB offers online index rebuilds and schema changes in the context of the Yugabyte Cloud QL (YCQL) API today, while these features are a work in progress for the YSQL API. With YugabyteDB v2.1, YSQL outperforms CockroachDB v19.2 in the YCSB benchmark especially as data volume stored per node grows into TBs. The database is described as a monolithic SQL database on top of a distributed KV database rather than a "distributed SQL database" as claimed by Cockroach Labs. YugabyteDB supports pessimistic locking for pessimistic concurrency control and has made significant performance improvements in YCSB, sysbench, and TPC-C benchmarks.