TPC-DS ベンチマーク
TPC-DS は、トランザクション処理性能評議会 (TPC) によって開発された意思決定支援ベンチマークです。これは、TPC-H よりも包括的なテストデータセットと複雑な SQL クエリを使用します。
TPC-DS は、意思決定支援システムの一般的に適用可能な側面をいくつかモデル化しており、クエリやデータメンテナンスを含みます。TPC-DS は、小売環境におけるデータベースシステムの性能をテストおよび評価するための包括的で現実的なワークロードを提供することを目的としています。TPC-DS ベンチマークは、小売企業における 3 つの販売チャネル(店舗、インターネット、およびカタログ)の販売および返品データをシミュレートします。販売および返品データモデルのテーブルを作成するだけでなく、単純な在庫システムとプロモーションシステムも含まれています。
このベンチマークは、データサイズが 1 GB から 3 TB の 24 のテーブルに対して、合計 99 の複雑な SQL クエリをテストします。主な性能指標は各クエリの応答時間であり、クエリが送信されてから結果が返されるまでの時間です。
テスト結論
テストは、CelerData と Trino 上で TPC-DS 1 TB データセットに対して実施されました。以下の結果の単位はミリ秒です。
CelerData では、テストクエリはその内部テーブル(クラシックアーキテクチャとエラスティックアーキテクチャの両方で)および Iceberg Catalog(エラスティックアーキテクチャで)で実行されます。Trino では、同じ Iceberg Catalog でテストクエリが実行されます。CelerData と Trino の Iceberg Catalog に対する両方のテストでは、AWS Glue をメタストアとして使用し、ZSTD 圧縮の Parquet 形式のデータを使用します。Databricks Photon では、Delta Lake テーブルでテストクエリが実行されます。これも AWS Glue をメタストアとして使用し、ZSTD 圧縮の Parquet 形式のデータを使用します。
テスト結果は以下の通りです:
- CelerData クラシッククラスターの OLAP テーブルで実行されたクエリは 295 秒かかりました。
- CelerData エラスティッククラスターの OLAP テーブルで実行されたクエリは 299 秒かかりました。
- CelerData エラスティッククラスターの Iceberg Catalog で実行されたクエリは 311 秒かかりました。
- Trino の Iceberg Catalog で実行されたクエリは 2552 秒かかりました。
- Databricks Photon の Delta Lake で実行されたクエリは 415 秒かかりました。
結論は以下の通りです:
-
CelerData はクラシックとエラスティックアーキテクチャの両方で同等の性能を発揮します
OLAP テーブルクエリシナリオでは、CelerData のクラシックモードはエラスティックモードの 1.01 倍の性能を 達成し、ストレージとコンピュートの分離による性能オーバーヘッドが最小限であることを示しています。
-
CelerData は、Lakehouse クエリシナリオで Trino および Databricks Photon を大幅に上回り、OLAP テーブルクエリでさらに大きな利点を持っています
- Iceberg Catalog クエリシナリオでは、CelerData は Trino の 8.2 倍、Databricks Photon の 1.3 倍の性能を発揮します。
- OLAP テーブルクエリでは、性能差がさらに広がり、CelerData は Trino の 8.52 倍(クラシックモード)、8.54 倍(エラスティックモード)、Databricks Photon の 1.4 倍(クラシックおよびエラスティックモードの両方)を達成します。
テスト準備
ハードウェア
CelerData と Trino は、同じ構成のホストにデプロイされています - AWS m6id.4xlarge。
Spec | |
---|---|
インスタンス数 | 5 |
vCPU | 16 |
メモリ (GiB) | 64 |
インスタンスストレージ (GB) | 1x950 NVMe SSD |
ネットワーク帯域幅 (Gbps) | 最大 12.5 |
EBS 帯域幅 (Gbps) | 最大 10 |