TPC-DS ベンチマーク
TPC-DS は、トランザクション処理性能評議会 (TPC) によって開発された意思決定支援ベンチマークです。これは、TPC-H よりも包括的なテストデータセットと複雑な SQL クエリを使用します。
TPC-DS は、意思決定支援システムの一般的に適用可能な側面をいくつかモデル化しており、クエリやデータメンテナンスを含みます。TPC-DS は、小売環境におけるデータベースシステムの性能をテストおよび評価するための包括的で現実的なワークロードを提供することを目的としています。TPC-DS ベンチマークは、小売企業の 3 つの販売チャネル(店舗、インターネット、カタログ)の販売および返品データをシミュレートします。販売および返品データモデルのテーブルを作成することに加えて、簡単な在庫システムとプロモーションシステムも含まれています。
このベンチマークは、データサイズが 1 GB から 3 TB の 24 のテーブルに対して合計 99 の複雑な SQL クエリをテストします。主な性能指標は各クエリの 応答時間であり、クエリが送信されてから結果が返されるまでの時間です。
テスト結論
テストは、StarRocks と Trino 上で TPC-DS 1 TB データセットに対して実施されます。以下の結果の単位はミリ秒です。

StarRocks では、テストクエリはその内部テーブル(共有なしおよび共有データアーキテクチャの両方)と Iceberg Catalog(共有データアーキテクチャの下)で実行されます。Trino では、同じ Iceberg Catalog でテストクエリが実行されます。Iceberg Catalog 上の StarRocks と Trino の両方のテストは、メタストアとして AWS Glue を使用し、ZSTD 圧縮された Parquet 形式のデータを使用します。
テスト結果は次のとおりです:
- StarRocks 共有なしクラスタの OLAP テーブルで実行されたクエリは 314 秒かかりました。
- StarRocks 共有データクラスタの OLAP テーブルで実行されたクエリは 326 秒かかりました。
- StarRocks 共有データクラスタの Iceberg Catalog で実行されたクエリは 368 秒かかりました。
- Trino の Iceberg Catalog で実行されたクエリは 2552 秒かかりました。
結論は次のとおりです:
-
StarRocks は、共有なしおよび共有データアーキテクチャの両方で同等の性能を発揮します
OLAP テーブルクエリシナリオでは、StarRocks は共有な しモードで共有データモードの 1.04 倍の性能を達成し、ストレージとコンピュートの分離による性能オーバーヘッドが最小限であることを示しています。
-
StarRocks は、Lakehouse クエリシナリオで Trino を大幅に上回り、OLAP テーブルクエリではさらに大きな利点を持っています
- Iceberg Catalog クエリシナリオでは、StarRocks は Trino の 6.93 倍の性能を発揮します。
- OLAP テーブルクエリでは、性能差がさらに広がり、StarRocks は Trino の 8.13 倍(共有なしモード)および 7.82 倍(共有データモード)の性能を達成します。
テスト準備
ハードウェア
StarRocks と Trino は、同じ構成のホストにデプロイされています - AWS m6id.4xlarge.
| Spec | |
|---|---|
| インスタンス数 | 5 |
| vCPU | 16 |
| メモリ (GiB) | 64 |
| インスタンスストレージ (GB) | 1x950 NVMe SSD |
| ネットワーク帯域幅 (Gbps) | 最大 12.5 |
| EBS 帯域幅 (Gbps) | 最大 10 |