首页
/ Time Series Benchmark Suite (TSBS) 使用教程

Time Series Benchmark Suite (TSBS) 使用教程

2026-01-19 11:10:37作者:滕妙奇

项目介绍

Time Series Benchmark Suite (TSBS) 是一个用于比较和评估时序数据处理(数据库)系统性能的基准测试平台。TSBS 由 Timescale 开源并负责维护,提供了 IoT 和 DevOps 两个典型应用场景。作为一个性能基准测试平台,TSBS 具有便捷、易用、扩展灵活等特点,涵盖了时序数据的生成、写入(加载)、多种类别的典型查询等功能,并能够自动汇总最终结果。

项目快速启动

安装

首先,克隆 TSBS 项目到本地:

git clone https://github.com/timescale/tsbs.git
cd tsbs

生成数据

使用以下命令生成测试数据:

go run cmd/generate/generate.go \
    -format influx \
    -use-case cpu-only \
    -scale 10 \
    -seed 123 \
    -timestamp-start 2023-01-01T00:00:00Z \
    -timestamp-end 2023-01-02T00:00:00Z \
    > data.influx

加载数据

使用以下命令将生成的数据加载到数据库中(以 InfluxDB 为例):

go run cmd/load/load.go \
    -db-name test \
    -batch-size 10000 \
    -workers 4 \
    -file data.influx

应用案例和最佳实践

DevOps 场景

在 DevOps 场景中,TSBS 可以生成和加载来自 9 个系统的监控数据,包括 CPU、内存、磁盘等。以下是一个简单的示例:

go run cmd/generate/generate.go \
    -format influx \
    -use-case devops \
    -scale 10 \
    -seed 123 \
    -timestamp-start 2023-01-01T00:00:00Z \
    -timestamp-end 2023-01-02T00:00:00Z \
    > devops_data.influx

go run cmd/load/load.go \
    -db-name devops_test \
    -batch-size 10000 \
    -workers 4 \
    -file devops_data.influx

IoT 场景

在 IoT 场景中,TSBS 可以生成和加载来自多个设备的传感器数据。以下是一个简单的示例:

go run cmd/generate/generate.go \
    -format influx \
    -use-case iot \
    -scale 10 \
    -seed 123 \
    -timestamp-start 2023-01-01T00:00:00Z \
    -timestamp-end 2023-01-02T00:00:00Z \
    > iot_data.influx

go run cmd/load/load.go \
    -db-name iot_test \
    -batch-size 10000 \
    -workers 4 \
    -file iot_data.influx

典型生态项目

TimescaleDB

TimescaleDB 是一个为时序数据优化的开源数据库,支持 SQL 查询。TSBS 提供了针对 TimescaleDB 的专门加载器和查询生成器。

InfluxDB

InfluxDB 是一个流行的开源时序数据库,TSBS 提供了针对 InfluxDB 的专门加载器和查询生成器。

ClickHouse

ClickHouse 是一个高性能的列式数据库,适用于大规模数据分析。TSBS 提供了针对 ClickHouse 的专门加载器和查询生成器。

通过 TSBS,用户可以方便地比较和评估不同数据库在时序数据处理方面的性能,从而选择最适合自己需求的数据库。

登录后查看全文
热门项目推荐
相关项目推荐