目录

TS-Benchmark: A Benchmark for Time Series Databases

Description

This project is the source code of TS-Benchmark. Related work has been published in ICDE 2021. bibTex:

@inproceedings{DBLP:conf/icde/HaoQCLSTZD21,
  author    = {Yuanzhe Hao and
               Xiongpai Qin and
               Yueguo Chen and
               Yaru Li and
               Xiaoguang Sun and
               Yu Tao and
               Xiao Zhang and
               Xiaoyong Du},
  title     = {TS-Benchmark: {A} Benchmark for Time Series Databases},
  booktitle = {37th {IEEE} International Conference on Data Engineering, {ICDE} 2021,
               Chania, Greece, April 19-22, 2021},
  pages     = {588--599},
  publisher = {{IEEE}},
  year      = {2021},
  url       = {https://doi.org/10.1109/ICDE51399.2021.00057},
  doi       = {10.1109/ICDE51399.2021.00057},
  timestamp = {Mon, 28 Jun 2021 10:16:44 +0200},
  biburl    = {https://dblp.org/rec/conf/icde/HaoQCLSTZD21.bib},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}

Start

The general steps to complete the test are:

  1. Data generation cd data_generation

  2. Train DCGAN model python DCGAN.py Run the encoder_dc.py file to train the encoder, python encoder_dc.py Finally execute the test python test_dc.py

  3. Data Import Since each database have different build-in tools for data import, we have defined some tools related to data import in the tsdb-test/data/load directory

  4. build project cd Tsdb-benchmark/ts-benchmark/ sh build.sh

  5. config parametes of database and run the benchmark cd Tsdb-benchmark/ts-benchmark/ vim run.sh (choose database and test mode) sh run.sh

Params description

The configuration of TSDBs is shown as follows:

  • InfluxDB. We enlarge the default values of some important parameters of the TSM engine for better performance of the system. For example, the parameter wal-fsync- delay is set as “0s”, the parameter cache-max-memory-size is set to 1,048,576,000 bytes, and the parameter cache-snapshot-memory-size is enlarged to “100M” and so on. Maximum memory size is sufficient. The parameter max-values-per-tag is set as 0 to allow an unlimited number of tag values.
  • TimescaleDB. The parameter shared-buffers is set as 8GB, maintenance-work-mem is set as 2GB, checkpoint-completion-target is set as 0.7, min_wal size is set as 1GB, and max wal size is 2GB. Parameters of PostgreSQL is set based on PgTune.
  • Druid. The parameter Roll-up is set as true, and Granu-larity is set as hour. For local batch import, the parameter maxRowsPerSegment is set as 10M, maxRowsInMemory is set as 20M, and maxTotalRows is set as 100M.
  • OpenTSDB. The parameter tsd-http-request-enable-chunked is enabled, tsd-http-request-max-chunk is set as 32KB, tsd-core-auto-create-metrics is set as true, and the parameter tsd-storage-enable-compaction is set to be false to improve the write performance.

More

If you have interests in the directed graph construction and the generation via random walk. you can ref to the random_walk.ipynb Quick Open It!

More information please ref to for detail

关于

TS-Benchmark作为时序数据库性能测试的基本工具,以风力发电设备监控为应用场景,广泛用于各类时序数据库的性能测试。本项目以青岛大学本科生为主体,在TS-Benchmark的基础上开展二次开发,目标是通过接口优化、数据生成机制改进以及可视化分析等功能扩展,提高时序数据库性能测试的效率、灵活性与适用性,为InfluxDB、TDengine等主流时序数据库的客观评估提供更高效便捷的测试支持。

14.6 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802032778号