Skip to content

Commit

Permalink
remove 0.12 version
Browse files Browse the repository at this point in the history
  • Loading branch information
SpriCoder committed Jun 5, 2024
1 parent 4aa2a87 commit e6b38f7
Show file tree
Hide file tree
Showing 28 changed files with 54 additions and 2,377 deletions.
12 changes: 1 addition & 11 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ jobs:
id: compile-benchmark
run: |
cd ${{ github.workspace }}/iot-benchmark
mvn clean package -am -pl core,influxdb,influxdb-2.0,tdengine,timescaledb,iotdb-1.0,iotdb-1.1,iotdb-0.13,iotdb-0.12,iotdb-1.3 -DskipTests
mvn clean package -am -pl core,influxdb,influxdb-2.0,tdengine,timescaledb,iotdb-1.0,iotdb-1.1,iotdb-0.13,iotdb-1.3 -DskipTests
# get time
- name: collect common info
shell: bash
Expand All @@ -98,16 +98,6 @@ jobs:
Java Version: java${{ matrix.java_version }}
draft: false
prerelease: false
#---0.12
- name: Upload benchmark-iotdb-0.12
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create-release.outputs.upload_url }}
asset_path: ${{ github.workspace }}/iot-benchmark/iotdb-0.12/target/iot-benchmark-iotdb-0.12.zip
asset_name: benchmark-iotdb-0.12-java${{ matrix.java_version }}.zip
asset_content_type: application/zip
#---0.13
- name: Upload benchmark-iotdb-0.13
uses: actions/upload-release-asset@v1
Expand Down
12 changes: 1 addition & 11 deletions .github/workflows/release_history_commit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ jobs:
id: compile-benchmark
run: |
cd ${{ github.workspace }}/iot-benchmark
mvn clean package -am -pl core,influxdb,influxdb-2.0,tdengine,tdengine-3.0,timescaledb,iotdb-1.0,iotdb-1.1,iotdb-0.13,iotdb-0.12 -DskipTests
mvn clean package -am -pl core,influxdb,influxdb-2.0,tdengine,tdengine-3.0,timescaledb,iotdb-1.0,iotdb-1.1,iotdb-0.13 -DskipTests
# get time
- name: collect common info
shell: bash
Expand All @@ -69,16 +69,6 @@ jobs:
Java Version: java${{ matrix.java_version }}
draft: false
prerelease: false
#---0.12
- name: Upload benchmark-iotdb-0.12
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create-release.outputs.upload_url }}
asset_path: ${{ github.workspace }}/iot-benchmark/iotdb-0.12/target/iot-benchmark-iotdb-0.12.zip
asset_name: benchmark-iotdb-0.12-java${{ matrix.java_version }}.zip
asset_content_type: application/zip
#---0.13
- name: Upload benchmark-iotdb-0.13
uses: actions/upload-release-asset@v1
Expand Down
30 changes: 14 additions & 16 deletions README-cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,8 @@ IoT-Benchmark 是用来评估时序数据库、实时数据库在工业物联网

目前支持如下数据库、版本和连接方式:

| 数据库 | 版本 | 连接方式 |
| :------------------: |:--------:| :------------------------------------------------------: |
| 数据库 | 版本 | 连接方式 |
| :------------------: | :------: | :------------------------------------------------------: |
| IoTDB | v1.x | jdbc、sessionByTablet、sessionByRecord、sessionByRecords |
| InfluxDB | v1.x | SDK |
| InfluxDB | v2.0 | SDK |
Expand Down Expand Up @@ -127,19 +127,18 @@ iot-benchmark的特点如下:
1. Java 8
2. Maven:不建议使用镜像源,国内可以使用阿里云镜像源。
3. 合适版本的数据库
1. Apache IoTDB >= v0.12([获取方式](https://github.com/apache/iotdb))
1. Apache IoTDB >= v0.13([获取方式](https://github.com/apache/iotdb))
2. 其他的对应版本的数据库
4. CSV的记录模式只能在Linux系统中使用,记录测试过程中的相关系统信息。
5. 我们建议使用MacOs或Linux系统,本文以MacOS和Linux系统为例,如果使用Windows系统,请使用`conf`文件夹下的`benchmark.bat`脚本启动benchmark。

## 5.2. iot-benchmark支持的运行模式
| 模式名称 | BENCHMARK_WORK_MODE | 模式内容 |
| :--------------------: | :-------------------: | :------------------------------------------------------------------------------------- |
| 常规测试模式 | testWithDefaultPath | 支持多种读和写操作的混合负载 |
| 生成数据模式 | generateDataMode | Benchmark生成数据集到FILE_PATH路径中 |
| 正确性写入模式 | verificationWriteMode | 从FILE_PATH路径中加载数据集进行写入,目前支持IoTDB v0.12 和 IoTDB v0.13 |
| 正确性查询模式 | verificationQueryMode | 从FILE_PATH路径中加载数据集和数据库中进行比对,目前支持IoTDB v0.12 和 IoTDB v0.13 |

| 模式名称 | BENCHMARK_WORK_MODE | 模式内容 |
| :------------: | :-------------------: | :------------------------------------------------------------------------------- |
| 常规测试模式 | testWithDefaultPath | 支持多种读和写操作的混合负载 |
| 生成数据模式 | generateDataMode | Benchmark生成数据集到FILE_PATH路径中 |
| 正确性写入模式 | verificationWriteMode | 从FILE_PATH路径中加载数据集进行写入,目前支持 IoTDB v0.13 及更新的版本 |
| 正确性查询模式 | verificationQueryMode | 从FILE_PATH路径中加载数据集和数据库中进行比对,目前支持 IoTDB v0.13 及更新的版本 |

## 5.3. iot-benchmark的编译构建

Expand All @@ -155,13 +154,12 @@ mvn clean package -Dmaven.test.skip=true

默认的配置文件存放在`iot-benchmark/iotdb-0.13/target/iot-benchmark-iotdb-0.13/conf`下,您可以编辑`config.properties`来完成配置,请**注意的是,您需要将配置文件中的DB_SWITCH参数调整为您需要被测数据库**,其对应关系和可能取值如下所示:

| 数据库 | 版本 | 对应子项目 | DB_SWITCH |
| :------------------: |:--------:|:-------------------:|:------------------------------------------------------------------------------------------------------------:|
| 数据库 | 版本 | 对应子项目 | DB_SWITCH |
| :------------------: | :------: | :-----------------: | :----------------------------------------------------------------------------------------------------------: |
| IoTDB | 1.3 | iotdb-1.3 | IoTDB-130-JDBC<br>IoTDB-130-SESSION_BY_TABLET<br>IoTDB-130-SESSION_BY_RECORD<br>IoTDB-130-SESSION_BY_RECORDS |
| IoTDB | 1.1 | iotdb-1.1 | IoTDB-110-JDBC<br>IoTDB-110-SESSION_BY_TABLET<br>IoTDB-110-SESSION_BY_RECORD<br>IoTDB-110-SESSION_BY_RECORDS |
| IoTDB | 1.0 | iotdb-1.0 | IoTDB-100-JDBC<br>IoTDB-100-SESSION_BY_TABLET<br>IoTDB-100-SESSION_BY_RECORD<br>IoTDB-100-SESSION_BY_RECORDS |
| IoTDB | 0.13 | iotdb-0.13 | IoTDB-013-JDBC<br>IoTDB-013-SESSION_BY_TABLET<br>IoTDB-013-SESSION_BY_RECORD<br>IoTDB-013-SESSION_BY_RECORDS |
| IoTDB | 0.12 | iotdb-0.12 | IoTDB-012-JDBC<br>IoTDB-012-SESSION_BY_TABLET<br>IoTDB-012-SESSION_BY_RECORD<br>IoTDB-012-SESSION_BY_RECORDS |
| InfluxDB | v1.x | influxdb | InfluxDB |
| InfluxDB | v2.0 | influxdb-2.0 | InfluxDB-2.0 |
| QuestDB | v6.0.7 | questdb | QuestDB |
Expand Down Expand Up @@ -923,7 +921,7 @@ SENSORS=[s_0, s_1, s_2, s_3, s_4, s_5, s_6, s_7, s_8, s_9]

## 6.8. 正确性写入模式(单数据库,外部数据集)

为了验证数据集写入的正确性,您可以使用该模式写入生成数据模式中生成的数据集,目前该模式仅支持IoTDB v0.12 ,IoTDB v0.13和InfluxDB v1.x
为了验证数据集写入的正确性,您可以使用该模式写入生成数据模式中生成的数据集,目前该模式仅支持IoTDB v0.13 及更新的版本和InfluxDB v1.x

### 6.8.1. Benchmark的配置

Expand Down Expand Up @@ -1132,7 +1130,7 @@ VERIFICATION_QUERY 14.48 0.96 11.40 12.67 14.43
为了更方便、快速完成正确性验证,iot-benchmark也支持双数据库模式。

1. 对于上文中提到的所有测试场景,除特别说明,均支持双数据库进行。请在`verification`项目中**启动测试**
2. 对于下文中的正确性验证的相关测试场景,均必须在双数据库模式下运行,并且目前仅仅支持iotdb-0.12, iotdb-0.13和timescaledb
2. 对于下文中的正确性验证的相关测试场景,均必须在双数据库模式下运行,并且目前仅支持IoTDB v0.13 及更新的版本和timescaledb

为了完成双数据库配置,您需要对`config.properties`完成如下修改:

Expand Down Expand Up @@ -1563,7 +1561,7 @@ VALUE_RANGE_QUERY_DESC 1.61 0.14 0.30 0.43 0.72
[快速指引](./tdengine/README.md)

# 8. 正确性验证的进一步说明
1. 目前正确性验证部分仅支持IoTDB v0.12, IoTDB v0.13和TimeScaleDB
1. 目前正确性验证部分仅支持IoTDB v0.13 及更新的版本和TimeScaleDB
2. [快速指引](verification/README.md)

# 9. 自动化脚本
Expand Down
56 changes: 28 additions & 28 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,22 +84,22 @@ IoT-Benchmark is a benchmarking tool designed to evaluate the performance of Tim

Databases currently supported:

| Database | Version | Insert_Mode |
| :------------------: |:--------:| :------------------------------------------------------: |
| IoTDB | v1.x | sessionByTablet、sessionByRecords、jdbc |
| InfluxDB | v1.x | SDK |
| InfluxDB | v2.0 | SDK |
| QuestDB | v6.0.7 | jdbc |
| Microsoft SQL Server | 2016 SP2 | jdbc |
| VictoriaMetrics | v1.64.0 | Http Request |
| SQLite | -- | jdbc |
| OpenTSDB | 2.4.1 | Http Request |
| KairosDB | -- | Http Request |
| TimescaleDB | -- | jdbc |
| TimescaleDB | Cluster | jdbc |
| TDengine | 2.2.0.2 | jdbc |
| TDengine | 3.0.1 | jdbc |
| PI Archive | 2016 | jdbc |
| Database | Version | Insert_Mode |
| :------------------: | :------: | :-------------------------------------: |
| IoTDB | v1.x | sessionByTablet、sessionByRecords、jdbc |
| InfluxDB | v1.x | SDK |
| InfluxDB | v2.0 | SDK |
| QuestDB | v6.0.7 | jdbc |
| Microsoft SQL Server | 2016 SP2 | jdbc |
| VictoriaMetrics | v1.64.0 | Http Request |
| SQLite | -- | jdbc |
| OpenTSDB | 2.4.1 | Http Request |
| KairosDB | -- | Http Request |
| TimescaleDB | -- | jdbc |
| TimescaleDB | Cluster | jdbc |
| TDengine | 2.2.0.2 | jdbc |
| TDengine | 3.0.1 | jdbc |
| PI Archive | 2016 | jdbc |

# 4. Main Features

Expand All @@ -124,18 +124,18 @@ To use iot-benchmark, you need to have:
1. Java 8
2. Maven: It is not recommended to use the mirror.
3. The appropriate version of the database
- Apache IoTDB >= v0.12 ([Get it!](https://github.com/apache/iotdb))
- Apache IoTDB >= v0.13 ([Get it!](https://github.com/apache/iotdb))
- His corresponding version of the database
4. CSV recording modes can only be used in Linux systems to record relevant system information during the test.

## 5.2. Working modes of iot-benchmark

| The name of mode | BENCHMARK_WORK_MODE | The content of mode |
| :-----------------------------------: | :-------------------: | :----------------------------------------------------------------------------------------------------------------------------------------------- |
| Conventional test mode | testWithDefaultPath | Supports mixed loads of multiple read and write operations |
| Generate data mode | generateDataMode | Benchmark generates the data set to the FILE_PATH path |
| Write mode of verification | verificationWriteMode | Load the data set from the FILE_PATH path for writing, currently supports IoTDB v0.12 and v0.13 |
| Query mode of verification | verificationQueryMode | Load the data set from the FILE_PATH path and compare it with the database. Currently, IoTDB v0.12 and v0.13 is supported |
| The name of mode | BENCHMARK_WORK_MODE | The content of mode |
| :------------------------: | :-------------------: | :-------------------------------------------------------------------------------------------------------------------------------- |
| Conventional test mode | testWithDefaultPath | Supports mixed loads of multiple read and write operations |
| Generate data mode | generateDataMode | Benchmark generates the data set to the FILE_PATH path |
| Write mode of verification | verificationWriteMode | Load the data set from the FILE_PATH path for writing, currently supports IoTDB v0.13 and newer version is supported |
| Query mode of verification | verificationQueryMode | Load the data set from the FILE_PATH path and compare it with the database. Currently, IoTDB v0.13 and newer version is supported |

## 5.3. Build of iot-benchmark

Expand All @@ -152,7 +152,7 @@ After, for example, you can go to `/iot-benchmark/iotdb-0.13/target/iot-benchmar
The default configuration file is stored under `iot-benchmark/iotdb-0.13/target/iot-benchmark-iotdb-0.13/conf`, you can edit `config.properties` to complete the configuration, please **note that you need to Adjust the DB_SWITCH parameter in the configuration file to the database you need to be tested**. The corresponding relationship and possible values are as follows:

| Database | Version | Corresponding Sub-project | DB_SWITCH |
|:--------------------:|:--------:|:-------------------------:|:------------------------------------------------------------------------------------------------------------:|
| :------------------: | :------: | :-----------------------: | :----------------------------------------------------------------------------------------------------------: |
| IoTDB | 1.3 | iotdb-1.3 | IoTDB-130-JDBC<br>IoTDB-130-SESSION_BY_TABLET<br>IoTDB-130-SESSION_BY_RECORD<br>IoTDB-130-SESSION_BY_RECORDS |
| IoTDB | 1.1 | iotdb-1.1 | IoTDB-110-JDBC<br>IoTDB-110-SESSION_BY_TABLET<br>IoTDB-110-SESSION_BY_RECORD<br>IoTDB-110-SESSION_BY_RECORDS |
| IoTDB | 1.0 | iotdb-1.0 | IoTDB-100-JDBC<br>IoTDB-100-SESSION_BY_TABLET<br>IoTDB-100-SESSION_BY_RECORD<br>IoTDB-100-SESSION_BY_RECORDS |
Expand Down Expand Up @@ -928,7 +928,7 @@ SENSORS=[s_0, s_1, s_2, s_3, s_4, s_5, s_6, s_7, s_8, s_9]

## 6.8. Write mode for Verificaiton (single database, external data set)

In order to verify the correctness of the data set writing, you can use this mode to write the data set generated in the generated data mode. Currently this mode only supports IoTDB v0.12 , v0.13 and influxdb v1.x
In order to verify the correctness of the data set writing, you can use this mode to write the data set generated in the generated data mode. Currently this mode only supports IoTDB v0.13 and newer version, influxdb v1.x

### 6.8.1. Configure

Expand Down Expand Up @@ -1046,7 +1046,7 @@ INGESTION 0.52 0.02 0.02 0.03 0.03

Before running this mode, you need to use the correctness write mode to write data to the database.

In order to verify the correctness of the data set writing, you can use this mode to query the data set written to the database. Currently this mode only supports IoTDB v0.12 , v0.13 and influxdb v1.x
In order to verify the correctness of the data set writing, you can use this mode to query the data set written to the database. Currently this mode only supports IoTDB v0.13 and newer version, influxdb v1.x

### 6.9.1. Configure

Expand Down Expand Up @@ -1143,7 +1143,7 @@ VERIFICATION_QUERY 14.48 0.96 11.40 12.67 14.43
In order to more conveniently and quickly complete the correctness verification, iot-benchmark also supports dual database mode.

1. For all the test scenarios mentioned above, unless otherwise specified, dual databases are supported. Please **start the test** in the `verification` project.
2. For the relevant test scenarios for correctness verification below, all must be run in dual database mode, and currently **only supports** iotdb-0.12, iotdb-0.13 and timescaledb.
2. For the relevant test scenarios for correctness verification below, all must be run in dual database mode, and currently **only supports** iotdb-0.13 and newer version, and timescaledb.

In order to complete the dual database configuration, you need to make the following modifications to `config.properties`:

Expand Down Expand Up @@ -1583,7 +1583,7 @@ VALUE_RANGE_QUERY_DESC 1.61 0.14 0.30 0.43 0.72

# 8. Further explanation of correctness verification

1. Now verification **only support** IoTDB v0.12, IoTDB v0.13 and TimescaleDB
1. Now verification **only support** IoTDB v0.13 and newer version, TimescaleDB
2. [Quick Start](verification/README.md)

# 9. Perform Multiple Tests Automatically
Expand Down
2 changes: 1 addition & 1 deletion configuration/conf/config.properties
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@
# IS_DOUBLE_WRITE=false

# 另一个写入的数据库,目前的格式为{name}{-version}{-insert mode}(注意-号)其全部参考值参见README文件
# ANOTHER_DB_SWITCH=IoTDB-012-SESSION_BY_TABLET
# ANOTHER_DB_SWITCH=IoTDB-013-SESSION_BY_TABLET

# 另一个写入的数据库的主机
# ANOTHER_HOST=127.0.0.1
Expand Down
Loading

0 comments on commit e6b38f7

Please sign in to comment.