Releases: YuriyIvon/DatabaseBenchmark
Releases · YuriyIvon/DatabaseBenchmark
0.9.14
0.9.13
- Array columns support.
- A new
Collectiongenerator to support the population of array columns. - A new parameter
DateTimeKindon theDateTimegenerator. - Unified date/time formatting across supported database engines.
- Print query parameter type in query traces.
- Improved output formatting when printing query results.
- Upgraded dependencies.
0.9.12
- Introduced
Unique,Constant, andPatterngenerators. - Introduced
MaxSourceRowsandSkipSourceRowsparameters for theColumnItemgenerator. - Fixed bugs with
WeightedListproperty handling inListItemandColumnItemgenerators. - Exposed
Localeparameter for locale-dependent generators. - A few input parameter validation improvements.
- Upgraded client libraries.
0.9.11
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
PostScriptFilePathparameter to run a custom database script right after table creation or data import. - Introduced
DataSourceMaxRowsparameter to limit the number of rows to be read from the data source. - Introduced
DataSources.Csv.TreatBlankAsNullparameter to control how blank values in the source CSV file must be treated. - Introduced
Distinctquery 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.Cultureparameter. Instead, a more high-levelDataSourceCulturewas introduced for theimportandinsertcommands. It is applicable to any string-to-number or string-to-timestamp conversions between a data source and the target database.
0.9.10
- 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
- Insert benchmark (
insertcommand) - Snowflake support
- Added an option
QueryDelayto control the delay between query executions - Added an option
PostgresJsonb.CreateGinIndexto 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
- 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
- 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
- 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
- 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