Skip to content

Releases: YuriyIvon/DatabaseBenchmark

0.9.12

10 Mar 16:07
Compare
Choose a tag to compare
  • Introduced Unique, Constant, and Pattern generators.
  • Introduced MaxSourceRows and SkipSourceRows parameters for the ColumnItem generator.
  • Fixed bugs with WeightedList property handling in ListItem and ColumnItem generators.
  • Exposed Locale parameter for locale-dependent generators.
  • A few input parameter validation improvements.
  • Upgraded client libraries.

0.9.11

04 Feb 18:42
Compare
Choose a tag to compare

Improvements

  • Implemented generators, which provide a flexible mechanism for generating arbitrary input datasets and query benchmark parameters.
  • Introduced an automatic data conversion capability, which allows implicit conversion between numeric types and between string and other types. Implicit conversion between string and other types can be useful when the data source and the target database don't share the same set of column types: the source database may store timestamps as strings, but the target may have a dedicated type for timestamps, or vice versa.
  • Introduced PostScriptFilePath parameter to run a custom database script right after table creation or data import.
  • Introduced DataSourceMaxRows parameter to limit the number of rows to be read from the data source.
  • Introduced DataSources.Csv.TreatBlankAsNull parameter to control how blank values in the source CSV file must be treated.
  • Introduced Distinct query option.
  • Fixed a bug with Boolean columns in DynamoDB that always set their value to false.
  • Added an explicit wait until the table is fully created in DynamoDB.
  • Fixed a bug in Elasticsearch reader that always skipped the first result item.
  • Fixed a crash in Elasticsearch on data import when query traces are switched on.
  • Upgraded .NET to 8.0.
  • Upgraded client libraries.

Breaking changes

  • Value randomization rule no longer contains separate options for different types of query parameters and is fully based on generators instead.
  • CSV data source no longer supports DataSource.Csv.Culture parameter. Instead, a more high-level DataSourceCulture was introduced for the import and insert commands. It is applicable to any string-to-number or string-to-timestamp conversions between a data source and the target database.

0.9.10

31 Jul 19:58
Compare
Choose a tag to compare
  • DynamoDB support
  • Inline parameters for raw queries
  • Support range conditions in PostgreSQL JSONB GIN queries
  • An option to override the culture for the CSV data source (to correctly parse dates and numbers)
  • Fixed a crash in Elasticsearch raw query benchmark
  • Fixed a crash in CosmosDB raw query benchmark
  • Upgraded client libraries

0.9.9

19 Feb 14:12
Compare
Choose a tag to compare
  • Insert benchmark (insert command)
  • Snowflake support
  • Added an option QueryDelay to control the delay between query executions
  • Added an option PostgresJsonb.CreateGinIndex to control whether to create a GIN index for PostgreSQL jsonb
  • Fixed a few issues with ClickHouse
  • Fixed Elasticsearch insert issue
  • Fixed a few issues with GUID and Boolean columns/parameters support for Oracle
  • Upgraded client libraries

0.9.8

24 Dec 11:47
Compare
Choose a tag to compare
  • Introduced Snowflake support
  • Fixed a few issues with ClickHouse
  • Fixed a few issues with GUID and Boolean columns/parameters support for Oracle
  • Upgraded client libraries

0.9.7

19 Nov 16:25
Compare
Choose a tag to compare
  • Standard Deviation column
  • Configurable columns in the benchmark results
  • Randomized inclusion of query condition parts
  • Support exists/not exists for Elasticsearch through "equals/not equals null" conditions
  • Upgraded client libraries

0.9.6

18 Sep 09:58
Compare
Choose a tag to compare
  • Correctly handle nullable columns on import from CSV and databases
  • Implemented configurable column mapping on import
  • Added a new option PostgresJsonb.UseGinOperators to control whether to use GIN-specific operators such as @>
  • Handle date/time values as sortable strings with JSONB fields

0.9.5

20 Aug 08:18
Compare
Choose a tag to compare
  • Improved SQL Server data import performance
  • Improved PostgreSQL JSONB query builder to support all operators
  • Read existing values for a column only once per run and share them between threads to avoid performance degradation when one thread is already running a benchmark and another one is still reading existing values at a warm-up
  • Updated client libraries

0.9.4

10 Jul 13:46
Compare
Choose a tag to compare
  • Oracle support
  • A new create command option DropExisting to re-create the table if it already exists
  • A new import command option MongoDb.CollectCosmosDbRequestUnits to collect request charge when importing data to MongoDB API for Cosmos DB
  • Added total request units to Cosmos DB import results
  • Removed total storage size from MongoDB import results, because it returned wrong numbers
  • Upgraded client libraries
  • Fixed some bugs

0.9.3

26 Jun 08:59
Compare
Choose a tag to compare
  • Partitioning support for Cosmos DB
  • Report the average row count for each benchmark run