YCSB

{{Short description|Type of computer evaluation tool}}

The Yahoo! Cloud Serving Benchmark (YCSB) is an open-source specification and program suite for evaluating retrieval and maintenance capabilities of computer programs. It is often used to compare the relative performance of NoSQL database management systems.

The original benchmark was developed by workers in the research division of Yahoo! who released it in 2010 with the stated goal of "facilitating performance comparisons of the new generation

of cloud data serving systems", particularly for transaction-processing workloads which differed from ones measured by benchmarks designed for more traditional database management systems.

{{cite web|url=https://www.cs.duke.edu/courses/fall13/cps296.4/838-CloudPapers/ycsb.pdf|title=Benchmarking cloud serving systems with YCSB|last=Cooper|first=Brian F|publisher=Yahoo Research|display-authors=etal}}

YCSB was contrasted with the TPC-H benchmark from the Transaction Processing Performance Council, with YCSB being called a big data benchmark while TPC-H is a decision support system benchmark.{{cite book |date= June 27, 2014 |publisher= IEEE |pages= 800–801 |display-authors=etal |doi= 10.1109/BigData.Congress.2014.128 |isbn= 978-1-4799-5057-7 |s2cid= 10756715 |chapter= YCSB and TPC-H: Big Data and Decision Support Benchmarks |title= 2014 IEEE International Congress on Big Data |last1= Barata |first1= Melyssa |last2= Bernardino |first2= Jorge |last3= Furtado |first3= Pedro }}

YCSB was used by DBMS vendors for "benchmark marketing".{{cite web |title= YCSB benchmark notes |last= Monash |first= Curt |url= http://www.dbms2.com/2013/01/17/ycsb-benchmark-notes |publisher= Monash Research}} It has been used in scholarly or tutorial discussions, particularly for Apache HBase.{{cite web |title= YCSB+T: Benchmarking web-scale transactional databases |last1= Dey |first1= Akon |last2= Nambiar |first2= Raghunath|last3= Fekete |first3= Alan |last4= Röhm |first4= Uwe |publisher= IEEE |url= http://www.computer.org/csdl/proceedings/icdew/2014/3481/00/06818330.pdf}}{{cite book |title= HBase Administration Cookbook |last= Jiang |first=Lifeng |year= 2012 |publisher= Packt Publishing |url=https://www.safaribooksonline.com/library/view/hbase-administration-cookbook/9781849517140/ch09s02.html}} It has been used for multiple-product comparisons by industry observers such as Network World (comparing Cassandra, MongoDB, and Riak),{{cite web |last= Bushik |first= Sergey |title= A vendor-independent comparison of NoSQL databases |url= https://www.networkworld.com/article/665327/tech-primers-a-vendor-independent-comparison-of-nosql-databases-cassandra-hbase-mongodb-riak.html |publisher= Network World|date= 2012-10-22 }} Thumbtack Technologies (comparing Aerospike, Cassandra, Couchbase, and MongoDB),{{cite web | title=NoSQL Benchmark Compares Aerospike, Cassandra, Couchbase and MongoDB |url= http://www.infoq.com/news/2013/04/NoSQL-Benchmark |first=Avram |last= Abel |publisher= InfoQ}} and the Polytechnic Institute and University of Coimbra (comparing Cassandra, HBase, Elasticsearch, MongoDB, Oracle NoSQL, OrientDB, Redis, Scalaris, Tarantool, and Voldemort).{{cite web |title= Experimental Evaluation of NoSQL Databases |last1= Abramova |first1= Veronika |last2=Bernardino |first2=Jorge |last3=Furtado |first3=Pedro |publisher= International Journal of Database Management Systems |url= http://airccse.org/journal/ijdms/papers/6314ijdms01.pdf}} SanDisk Corporation published results measured on the Oracle NoSQL Database.{{Cite web |title=Oracle NoSQL Database Cluster YCSB Testing with Fusion ioMemory Storage |url= https://www.sandisk.com/content/dam/sandisk-main/en_us/assets/resources/enterprise/white-papers/oracle-nosql-cluster-ycsb-testing-with-fusion-iomemory.pdf |date= June 15, 2016 |access-date= September 20, 2016 }}

Implementations

  • [https://github.com/brianfrankcooper/YCSB Original Java Implementation]
  • [https://github.com/pingcap/go-ycsb GoLang Implementation]
  • [https://github.com/ls4154/YCSB-cpp C++ Implementation for LevelDB, RocksDB, LMDB Embedded Key-Value Stores]
  • [https://github.com/unum-cloud/UCSB C++ Implementation for LevelDB, RocksDB, LMDB, WiredTiger, and UDisk Embedded Key-Value Stores]

References