跳到主要内容

TPC-H Benchmark: Databend Cloud vs. Snowflake

Quick Overview

TPC-H

The TPC-H benchmark 是一个用于评估决策支持系统的标准,专注于复杂查询和数据维护。在此分析中,我们使用 TPC-H SF100(SF1 = 6 Million Rows) 数据集比较 Databend Cloud 和 Snowflake,该数据集包含 100GB 的数据和大约 6 亿行,涵盖 22 个查询。

Disclaimer

The TPC Benchmark™ and TPC-H™ are trademarks of the Transaction Processing Performance Council (TPC). Our benchmark, while inspired by TPC-H, is not directly comparable to official TPC-H results.

Snowflake and Databend Cloud

  • Snowflake: Snowflake 以其先进的功能而闻名,例如分离存储和计算、按需扩展计算、数据共享和克隆功能。

  • Databend Cloud: Databend Cloud 提供与 Snowflake 类似的功能,作为一个云原生数仓,它也将存储与计算分离,并根据需要提供可扩展的计算。 它由开源 Databend project 开发而来,定位为 Snowflake 的一种现代、经济高效的替代方案,尤其适用于大规模分析。

Performance and Cost Comparison

  • Data Loading Costs: 与 Snowflake 相比,Databend 在数据加载方面实现了 67% 的成本降低
  • Query Execution Costs: Databend 在查询执行方面的成本比 Snowflake 大约 低 60%
Note

对于此 benchmark,没有应用特殊的 tuning。Snowflake 和 Databend Cloud 都使用了它们的默认设置。 请记住,不要只相信我们的话 - 我们鼓励您自己运行并验证这些结果。

Data Loading Benchmark

Alt text

TableSnowflake(695s, Cost $0.77)Databend Cloud(446s, Cost $0.25)Rows
customer18.13713.43615,000,000
lineitem477.740305.812600,037,902
nation1.3470.70825
orders103.08864.323150,000,000
part19.90812.19220,000,000
partsupp67.41045.34680,000,000
region0.7430.7255
supplier3.0003.68710,000,000
Total Time695s446s
Total Cost$0.77$0.25
Storage Size20.8GB24.5GB

Query Benchmark: Cold Run

Alt text

QuerySnowflake(Total 207s, Cost $0.23)Databend Cloud(Total 166s, Cost $0.09)
TPC-H 111.7038.036
TPC-H 24.5243.786
TPC-H 38.9086.040
TPC-H 48.1084.462
TPC-H 59.2027.014
TPC-H 61.2373.234
TPC-H 79.0827.345
TPC-H 810.8868.976
TPC-H 918.15213.340
TPC-H 1013.52512.891
TPC-H 112.5822.183
TPC-H 1210.0998.839
TPC-H 1313.4587.206
TPC-H 148.0014.612
TPC-H 158.7374.621
TPC-H 164.8641.645
TPC-H 175.36314.315
TPC-H 1819.97112.058
TPC-H 199.89312.579
TPC-H 208.5388.836
TPC-H 2116.43912.270
TPC-H 223.7441.926
Total Time207s166s
Total Cost$0.23$0.09

Query Benchmark: Hot Run

Alt text

查询Snowflake (总计 138 秒,成本 $0.15)Databend Cloud (总计 124 秒,成本 $0.07)
TPC-H 18.9347.568
TPC-H 23.0183.125
TPC-H 36.0895.234
TPC-H 44.9143.392
TPC-H 55.8004.857
TPC-H 60.8912.142
TPC-H 75.3814.389
TPC-H 85.7245.887
TPC-H 910.2839.621
TPC-H 1010.3688.524
TPC-H 111.1651.364
TPC-H 127.0525.352
TPC-H 1312.8296.180
TPC-H 143.2882.725
TPC-H 153.4752.748
TPC-H 164.0941.124
TPC-H 174.20313.757
TPC-H 1818.58311.630
TPC-H 193.8887.881
TPC-H 206.3795.797
TPC-H 2110.2879.806
TPC-H 221.5731.122
总时间138 秒124 秒
总成本$0.15$0.07

重现基准测试

您可以按照以下步骤重现基准测试。

基准测试环境

Snowflake 和 Databend Cloud 均在类似条件下进行了测试:

参数SnowflakeDatabend Cloud
计算集群大小SmallSmall
vCPU1616
价格$4/小时$2/小时
AWS 区域us-east-2us-east-2
存储AWS S3AWS S3
  • TPC-H SF100 数据集来自 Amazon Redshift,已加载到 Databend Cloud 和 Snowflake 中,未进行任何特定调整。

基准测试方法

我们对查询执行进行了冷热运行:

  1. 冷启动: 在执行查询之前,数仓被暂停并恢复。
  2. 热启动: 数仓未暂停,使用本地磁盘缓存。

前提条件

数据加载

  1. Snowflake 数据加载:

  2. Databend Cloud 数据加载:

TPC-H 查询

  1. Snowflake 查询:

  2. Databend Cloud 查询: