by Nita Dembla
この記事は、2020/09/29に公開された「Cloudera Data Warehouse outperforms Azure HDInsight in TPC-DS benchmark」の翻訳です。
パフォーマンスは、Cloud Data Warehouseサービスを選択する際の重要な判断基準の一つであると言えます。急速に変化する現代において、企業はデータに基づいた意思決定を迅速に行う必要があり、そのためにデータウェアハウスサービスに大きく依存しています。
このブログ記事では、Apache Hive-LLAP を使用したCloudera Data Platform (CDP) 上のCloudera Data Warehouse (CDW) と、Azure 上のMicrosoft HDInsight (同じくApache Hive-LLAP を使用) をTPC-DS 2.9 ベンチマークで比較しています。Microsoftは先日、最新バージョンの HDInsight 4.1 を発表しました。このベンチマークは、最新バージョンを使用した Interactive Query HDInsight クラスターで実行されています。
どちらのサービスもオープンソースのApache Hive-LLAPの同じバージョンを使用していますが、ベンチマークの結果は、LLAPを使用して、可能な限り最高のパフォーマンスを提供するには、CDWの方が適していることを明確に示しています。
- CDWは、同じハードウェアスペックを使用したTPC-DSクエリの総クエリ実行時間において、HDInsightを40%以上上回りました。(図1参照)
- CDWでのクエリはHDInsightに比べて平均2.7倍の速度で実行され、全体的な応答時間が短縮されました。(図2参照)
- CDWでは、このベンチマークは100%成功しました。一方、HDInsightではquery49の実行に問題があり、見積もりが甘かったためかメモリ不足に陥りました。
10TB スケールの TPC-DS をセットアップして実行するための、すべてのベンチマークスクリプトはこちらでご覧いただけます。また、ベンチマークに使用したスクリプトと HDInsight クラスタの構成はこちらです。CDW は、Cloudera Data Platform (CDP) の分析用オファリングです。CDP は Azure 上でスクリプトを使って簡単に設定することができます。
ベンチマークの構成
CDW では、データカタログ(テーブルとビューのカタログ)に対して仮想ウェアハウスをプロビジョニングすると、プラットフォームが完全にチューニングされた LLAP ワーカーノードを提供し、クエリを実行する準備が整います。ベンチマークの実行に必要な追加のセットアップや構成手順はありません。ベンチマークの実行が完了し、アクティビティが検出されなくなると、仮想ウェアハウスは自動的に停止します。ベンチマークでは、仮想ウェアハウスのサイズを「Small」とし、10ノードのクラスターを選択しました。
HDInsight では、CDW と同じノードタイプのワーカーを10台起動して、同様の比較を行いました。大規模なパーティショニングされたテーブルに対するクエリを可能にするために、いくつかのメタストア構成パラメータを追加する必要がありました。
TPC-DS の10TB のデータセットを ACID ORC 形式で生成し、ADLS Gen2 のクラウドストレージに保存しました。CDW と HDInsight の両方で、10台のノードすべてが SSD キャッシュを ON にした LLAP デーモンを実行していました。
Cloudera Data Warehouse 対 HDInsight
ベンチマークでは、各クエリを3回実行し、ランタイムが最も短いものを選びました。同じクエリを複数回実行することで,前回の実行時に SSD にキャッシュされていたデータのパフォーマンスを測定することができました。合計ランタイムは,98個のクエリすべてのランタイムを集計して算出しました。
以下の図1に示すように、CDWはベンチマークを4時間弱(14,386秒)で終えたのに対し、HDInsight は、6.74時間(24,266秒)と、全体の実行時間で40%以上も上回っています。
性能の差は、一部のクエリに限られたものではありません。CDW では、ベンチマークの60%以上で2倍から40倍の範囲でクエリのパフォーマンスが向上し、1クエリあたりの平均速度は2.7倍でした。
結論
CDWは、市場で最新かつ最もよくチューニングされたHiveエンジンを使用して、Apache Hive-LLAPプロジェクトのパイオニアコントリビューターによって構築し支援され、Clouderaのプラットフォームをすぐに使用できるように調整するための完全な知識と経験をパッケージ化します。企業は、パフォーマンスのための分析のチューニングに多大な時間と労力を費やすことなく、最も重要なデータからの洞察と価値の創出に取り組むことができます。
CDWは、パフォーマンスの向上に加えて、SaaS ライクなエクスペリエンスを提供し、お客様のデータライフサイクルのニーズをシームレスに管理します。高度に最適化されたKubernetes エンジン上で動作する CDW は、実際のクエリワークロードに応じて迅速かつ自動的にスケールアップ/ダウンすることができ、クラウド(パブリックおよびプライベート)のリソースと予算を最適に活用することができます。CDW は、データエンジニアリング、オペレーショナルデータベース、機械学習、データハブといった他のデータライフサイクルサービスとともに CDP で提供されます。CDPは、汎用性の高い Shared Data Experience(SDX)モジュールを通じて、すべてのサービスで一貫してエンドツーエンドのセキュリティ、ガバナンス、メタデータ管理を保証します。