Apache Doris vs Trino / Presto
Apache DorisとTrino/Prestoはどちらも人気のあるデータレイクハウスクエリエンジンですが、Dorisはパフォーマンスの面でTrino/Prestoを上回ります。Trino/Prestoは主にクエリエンジンですが、Dorisは独立したデータウェアハウスとしても機能できます。これにより、企業はDorisを使用してデータウェアハウスとレイクハウスクエリエンジンを統一し、データアーキテクチャを簡素化できます
-
統合: Dorisはデータウェアハウスとレイクハウスクエリエンジンを統合し、技術スタックを簡素化します
-
10倍のクエリパフォーマンス: Dorisネイティブテーブルは、Presto/Trinoと比較してクエリパフォーマンスを最大10倍向上させます
-
2-3倍高速: レイクハウスエンジンとしてのDorisは、Presto/Trinoより2-3倍高速です
注目の移行事例
「世界的に有名なインターネット大手企業として、我々の初期のデータプラットフォームはTrino、Pinot、Iceberg、Kyuubiを使用していましたが、複雑性、冗長性、パフォーマンスの低下に直面していました。これらをApache Dorisに置き換えることで、データレイクハウスとクエリエンジンを統合し、パフォーマンスを向上させ、コストを30%削減しました。」
「PrestoからDorisに切り替えた後、クエリパフォーマンスが大幅に改善され、クエリ時間が20-40秒から1-2秒に短縮されました。一般的なデータディメンションに基づいて2-3個のマテリアライズドビューを設計することで、Dorisはクエリに対して自動的に最適なビューをマッチングし、パフォーマンスをさらに向上させることができます。」
「TrinoとSparkSQLを使用していた時は、クエリレイテンシが分レベルで、パフォーマンスが低かったです。Dorisに切り替えた後、パフォーマンスが2倍改善されました。Dorisは技術スタックも統合し、リアルタイムおよびインタラクティブ分析ツールの管理を簡素化しました。」
Apache Doris vs. Trino / Presto
| Apache Doris | Trino / Presto | |
|---|---|---|
| アーキテクチャ |
|
|
| 実行エンジン |
|
|
| クエリオプティマイザー |
|
|
| キャッシング機構 |
|
|
| マテリアライズドビュー |
|
|
| 使用例 |
|
|
パフォーマンス比較
TPC-DS 1TBベンチマーク
TPC-DS 1TBベンチマークは、24のテーブルにわたる63.5億レコードの1TBデータセットを使用してデータウェアハウスのパフォーマンスを評価します。結合、集約、サブクエリをテストする99の複雑なクエリが含まれています。スノーフレークスキーマに基づき、実世界の販売シナリオをシミュレートします。1TBスケールは、クエリの複雑さのために困難です。
テスト環境は以下で構成されています:
- 1つのFE/Coordinatorノードと5つのBE/Workerノード
- 各ノードは64コア、1.5TBメモリ、SSDストレージを搭載
- HDFSはこれらのノードに共存し、Hiveテーブルが作成される
このテストでは、同じデータセットと同等のコンピューティングサービスを使用して、結果は次のことを示しています:
- データをDorisの内部テーブルにインポートしてDorisを使用してクエリすると、最短の実行時間を実現します。
- DorisとTrinoをそれぞれ使用してHiveテーブルから直接データをクエリする場合、Dorisはデータレイクにおいて優れたクエリ高速化パフォーマンスを実証します。
