Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce Airport Workload #1

Open
wants to merge 1,311 commits into
base: main
Choose a base branch
from
Open

Introduce Airport Workload #1

wants to merge 1,311 commits into from

Conversation

jodoma
Copy link

@jodoma jodoma commented Feb 9, 2024

This is a modification of the Yahoo! Cloud Serving Benchmark (YCSB) that brings a new workload and a set of new workload-related features for the following five different database bindings

  1. MongoDB
  2. Scylla
  3. JDBC
  4. DynamoDB
  5. Couchbase3

The new workload is built around a custom document structure that also comprises nested documents. It makes use of four different types of operations:

  • insert a single document
  • insert bulks of documents
  • delete a document by primary key
  • query any document by src_airport (equality), dst_airport (equality), and stops (lower or equal)
  • update one document by airline.alias

enis and others added 30 commits September 28, 2016 13:14
Tried to simplify the distinction between using JDBC's addBatch()/executeBatch()
API calls and "batching" updates via autoCommit=false and a manual commit() after
a given number of updates.

Breaks out flavors into their own package to reduce bloat in JdbcDBClient.

Encompasses changes from Enis Soztutar.
[cassandra] add sigar-dist dependency for maven test on Cassandra 2.2+ and tracing function
[cassandra] Increase Cassandra test timeout and add logging for test failures
[jdbc] Assorted cleanup/fixes around batching and supporting different databases
[azuretablestorage] Add Azure table storage
…xes for jdk9 (#712)

* in couchbase2 work around ReactiveX/RxJava#3824
* accumulo test hangs, so skip tests
* hbase10 and asynchbase test crashes with unknown class version, so skip tests
* orientdb tests fail, so skip
* core jar-with-deps fails, so keep them broken out

fixes #704, fixes #705
RedundantThrows is unreliable and latest checkstyle removes it.
checkstyle/checkstyle#5 (comment)
[jdbc, solr] Fix JDBC checkstyle and skip Solr 5.x with JDK 9
[solr] Upgrade Solr binding to 5.5.3
[solr,solr6] Add Solr 6 binding
[rest] Added Rest Client Module to benchmark RESTful Web Services
* Update Readme to match expected behavior for JdbcCreateTable
* Update sample properties file to use correct property key
[kudu] Update Kudu binding to 1.1.0, use slf4j for logging, improve table partitioning
ahachete and others added 30 commits November 26, 2020 21:48
* Upgrade AWS SDK from version 1.10.48 to 1.11.812.

* Introduce a new configuration parameter, dynamodb.region, which
  represents a valid AWS region code (see
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions
  for example). If specifying the region, it is not necessary to specify
  the dynamodb.endpoint parameter.

* Introduce support for non-standard endpoints. Before this commit,
  setting the endpoint to a non-standard one, like a proxy, but
  ultimately connecting to a region different from 'us-east-1' would
  lead to a credential errors due to bad signature:

  ERROR site.ycsb.db.DynamoDBClient
  -com.amazonaws.AmazonServiceException: Credential should be scoped to
  a valid region, not 'us-east-1'.  (Service: AmazonDynamoDBv2; Status
  Code: 400; Error Code: InvalidSignatureException;

  With this commit, if using a proxy as an endpoint, by setting also the
  region via dynamodb.region, it will work with no error.

* Set TCP Keep-Alive to true. Even it makes sense to be used by YCSB, it
  apparently doesn't improve performance notably given the connection
  reuse that the DynamoDB client is doing.

* Update the example config file with the endpoint and region parameters
  and behavior.
change mvn build target to just build rocksdb-binding. This also makes the build command to be consistent with these for other bindings.
The first ResultSet.next() call to test if the ResultSet was empty moved the cursor without adding the resulting row to the YCSB result callback.
* updated to latest recommended java sdk
* cleaned up binding implementation based on latest sdk
* added a default user agent string of 'azurecosmos-ycsb'

Co-authored-by: Andrew Feldman <[email protected]>
* [scylla] token awareness is enabled by default

See
https://docs.datastax.com/en/developer/java-driver/3.10/manual/load_balancing/ :

> If you don’t explicitly configure the policy,
> you get the default, which is a datacenter-aware,
> token-aware policy.

* [scylla] driver: update to 3.10.2-scylla-1
* [scylla] log used consistency level
* [scylla] doc: add latency correction section
* [scylla] doc: dump and merge histograms
* [scylla] doc: don't configure connections manually

https://github.com/scylladb/java-driver/commits/3.10.2-scylla

* [scylla] doc: details to sections 1,2,4,5
…-for-debug-flag

Removed the scope from the slf4j-simple dependency
…actoring the JDBC binding and type information.

o refactor code to put index creation in flavor instead of in static class
o outsource createFindOne to flavor class
o add new JDBC flavor class to handle index creation for MySQL;
    o use varchar(255) as text column for mysql
o increase logging during initialization
o add support for MySQL index creation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.