时序数据库 IoTDB 为什么选择 TPCx-IoT 基准测评?

IoTDB 在 TPCx-IoT 榜单的 What 与 Why 解答!

去年,我们发布了 IoTDB 多项性能表现位居国际数据库性能测试排行榜 benchANT(Time Series: DevOps)第一名的好消息。

刚刚落幕的数据库顶级会议 VLDB 上,我们又收获了一则重磅喜讯:IoTDB 原厂团队基于 Apache IoTDB 开发的企业级产品 TimechoDB 成功打破世界纪录,登顶权威性能基准榜单 TPCx-IoT

对我们而言,登顶 TPCx-IoT 是一件非常重要的事。那么,为什么这次成绩如此重要,登顶 TPCx-IoT 又意味着什么?

在后续梳理 TimechoDB 在 TPCx-IoT 的基准测试流程前,我们想先为大家解答两个基础且重要的问题......

01 What:什么是 TPCx-IoT?

在介绍 TPCx-IoT 之前,我们首先了解一下 TPC 是什么。TPC 是国际事务处理性能委员会的简称,英文全称为"Transaction Processing Performance Council"。

TPC 成立于 1988 年 8 月,是一个由全球数十家计算机软硬件厂家创建的非营利性组织,专注于为管理数据为中心的数据库等系统制定测试标准规范 ,用于测量和比较不同系统的性能与价格,并管理测试结果的发布

早在上个世纪 80 年代,当计算机应用于商业社会时,诸多的数据库厂商开始竞速宣传,每个厂商都站在自己的优势立场,宣传自己的系统是最好的,而当时又没有一个统一的标准能说明如何评判系统的性能。

后来,虽然 1985 年学术界提出了 Debit Credit 测试标准,同期 IBM 也提出了 TP1(Transaction Process)测试标准,但统一的标准并没有完全解决问题,因为没有一个公共认可的权威机构来监督测试的执行过程与结果。

这也就导致有些厂商根据自己的优势,随意修改标准中的关键要求来改善他们的测试结果,这样的结果显然是不客观、不具备参考性的。

直到 1988 年 8 月,工程师 Omri Serlin 成功说服了 8 家数据库厂商成立了 TPC,来制定一个统一且行业认可的标准,并对标准的执行进行监督,"王婆卖瓜自卖自夸"的局面才逐渐结束。

现在,TPC 已经成为国际上最权威的数据库性能测评基准组织之一国际上绝大多数知名数据库厂商及企业版产品,都参与了其设立的基准测评,如甲骨文 Oracle、微软 SQLServer、IBM DB2、Databricks 等等。

而 TPCx-IoT 是由 TPC 制定的第一个专门用来衡量物联网场景系统性能的行业标准基准 。该标准模拟了工业电力场景下数千个发电站的传感器数据负载 ,在评估软件写入性能的同时,也将运行软件与相应硬件/云平台成本考虑在内,以客观预估实现软件性能所需的成本。

TPCx-IoT 定义的三个主要评估指标为:

  • **性能指标(IoTps):**系统的有效数据吞吐量。计算方法为获取的数据量(Scale Factor)/获取所用时间(秒)。
  • **性价比指标($/kIoTps):**系统达到该吞吐性能指标需要的软件与硬件成本情况,以 3 年为系统生命周期,也是衡量成本的时间单位。计算方法为 1000*系统总成本/IoTps。
  • **系统商业化可用日期:**系统能够复现榜单中的性能、性价比指标数字,并可以进行商业化部署的起始日期,以此给工业领域用户使用参考。

从左至右分别为性能指标、性价比指标、系统商业化可用日期

02 Why:为什么我们选择 TPCx-IoT?

代表性的物联网基准测试包括 TPCx-IoT、IoT-Benchmark、TSBS 和 SmartBench 等。而我们之所以选择 TPCx-IoT,是因为它的权威性与公正性。这主要体现在以下三个方面:

  • 公开、统一标准下进行测试: 每个系统厂商负责测试自己的产品,杜绝了单个厂商测试多个系统的情况,从而避免可能通过技术手段使得自己产品性能远高于其他产品,产生不公平结果的可能性。
  • 由第三方机构进行验证: TPC 委员会会对测试工具的扩展实现进行审核,保证实现的公平 ;也会对测试流程、软件、硬件进行审核,保证测试过程和参数配置的公平,测试结果的客观性能够进一步得到保障。
  • 商业层面参考度高: TPCx-IoT 模拟的数据负载与现实世界的物联网应用非常相似,设置指标与工业用户的需求和利益紧密相关。这意味着基于该基准的测评结果不是空中楼阁,而是参考度高的、可商业化验证的。

除了榜单本身的权威性与公正性,IoTDB 研发团队也进行了非常严谨的测试过程 。在 TPCx-IoT 官方网站发布的榜单上,我们注意到有些系统在测试期间启用了预写日志(WAL),而其他系统则没有。

物联网场景需求各异,启用数据库的 WAL 可以提供数据的持久性,但会影响数据的写入性能;而当前置模块能保证数据持久性、又追求更高性能的场景下,可以关闭数据库的 WAL。

为了更全面、更有说服力地验证 TimechoDB 的性能,IoTDB 团队在 TPCx-IoT 数据负载下进行了两类测试 :一类启用 WAL,一类关闭 WAL,并在每个测试场景运行了 5 次,以确保测试结果始终可复现

TPCx-IoT 榜单中涵盖了 TimechoDB 两种配置的测试结果。结果可见,TimechoDB 关闭 WAL 情况下排名榜单第一,TimechoDB 开启 WAL 情况下排名榜单第二,两个版本在性能和性价比两个维度上都超过了所有其他系统

排名第一为关闭 WAL 结果,第二为启用 WAL 结果

03 更多细节:特邀论文发布!

值得一提的是,在 TPC 组织的年度会议 TPCTC 上,IoTDB 团队就技术创新、应用场景,以及在 TPCx-IoT 榜单的测试流程、结果对比、未来展望等内容做了特邀报告

成果也以论文**《Performance Evaluation of TimechoDB using TPCx-IoT Benchmark》** 形式,发表于计算机科学领域著名期刊:Lecture Notes in Computer Science(LNCS)

后续我们也将会把此篇论文中披露的测试细节整理发布,以便大家更好地了解 IoTDB 的优异性能表现,敬请期待!

更多内容推荐:

了解如何使用 IoTDB 企业版

了解更多 IoTDB 应用案例

规上企业应用实例

能源电力: 中核武汉国网信通产业集团华润电力大唐先一上海电气国轩清安储能某储能厂商太极股份绍兴安瑞思

航天航空: 中航机载共性北邮一号卫星

钢铁冶炼: 宝武钢铁中冶赛迪

交通运输: 中车四方长安汽车城建智控德国铁路

智慧工厂与物联: PCB 龙头企业博世力士乐德国宝马京东昆仑数据怡养科技

相关推荐
网易独家音乐人Mike Zhou5 分钟前
【卡尔曼滤波】数据预测Prediction观测器的理论推导及应用 C语言、Python实现(Kalman Filter)
c语言·python·单片机·物联网·算法·嵌入式·iot
工业甲酰苯胺37 分钟前
Redis性能优化的18招
数据库·redis·性能优化
没书读了2 小时前
ssm框架-spring-spring声明式事务
java·数据库·spring
i道i2 小时前
MySQL win安装 和 pymysql使用示例
数据库·mysql
小怪兽ysl2 小时前
【PostgreSQL使用pg_filedump工具解析数据文件以恢复数据】
数据库·postgresql
wqq_9922502773 小时前
springboot基于微信小程序的食堂预约点餐系统
数据库·微信小程序·小程序
爱上口袋的天空3 小时前
09 - Clickhouse的SQL操作
数据库·sql·clickhouse
2401_882727574 小时前
BY组态-低代码web可视化组件
前端·后端·物联网·低代码·数学建模·前端框架
聂 可 以4 小时前
Windows环境安装MongoDB
数据库·mongodb
web前端神器4 小时前
mongodb多表查询,五个表查询
数据库·mongodb