この記事は、2023/7/12に公開された「Integrating Cloudera Data Warehouse with Kudu Clusters」の翻訳です。
Apache ImpalaとApache Kuduは、ストリーミングデータに対するリアルタイム分析や時系列データ、リアルタイム・データウェアハウスのユースケースに最適な組み合わせです。
過去10年間で200社以上のCloudera顧客が、取り込みにApache Spark、リアルタイムBIにApache Impalaを組み合わせてApache Kuduを導入し、数千ノード規模で稼働させています。
ユースケースは、通信(4G/5G)分析、石油・ガス業界のリアルタイムレポートとアラート、製薬企業のサプライチェーン、銀行の基幹システムや株式取引分析など多岐にわたります。
Kuduの強みは、高速性を支えるC++製カラムナー・ストレージエンジンにあります。データは取り込み後わずか数秒でクエリ可能になり、一貫性とアトミック性を確保しつつ更新・削除のトランザクションもサポートします。Impala は分散型C++製SQLエンジンで、Kuduと連携して数百万行規模のクエリに対しサブ秒レベルのSLAを実現します。
Cloudera は、Real Time DataMart クラスター上でApache Kuduを、Kubernetes 上の Cloudera Data Warehouse(CDW)で Apache Impala を提供しています。スケーラブルなImpala(CDW)とKudu(DataHub クラスター)を組み合わせることで、計算(Impala)とストレージ(Kudu)を分離し、それぞれを独立してスケールさせることが可能になります。複数の CDW 仮想クラスターを、用途ごとに異なるリアルタイムDataMartクラスター/Kuduクラスターへ接続する高度なシナリオも実現できます。
前提条件
Step 1: Kuduマスターノードの情報を取得
1: CDP にログインし Data Hub Clusters へ移動。CDW からクエリしたい Kudu Real Time Data Mart クラスターを選択
2: クラスター詳細の Nodes タブを開き、3 台の Kudu マスターノード名を控える
例:
go01-datamart-master20.go01-dem.ylcu-atmi.cloudera.site go01-datamart-master30.go01-dem.ylcu-atmi.cloudera.site go01-datamart-master10.go01-dem.ylcu-atmi.cloudera.site
Go01-datamart-master20.go01-dem.ylcu-atmi.cloudera.site:7051 ,go01-datamart-master30.go01-dem.ylcu-atmi.cloudera.site:7051, go01-datamart-master10.go01-dem.ylcu-atmi.cloudera.site
5: Apply changes をクリックして変更内容を適用し、VW の再起動を待つ
VW の更新が完了したら、Hue、Impala Shell、ODBC/JDBC クライアントから Kudu テーブルをクエリできるようになります。
CDW と Kudu DataHub を統合することで、オンデマンドに計算リソースをスケールアップし、DataHub 側は Kudu のみを実行する構成が可能になります。Impala VW から Kudu をクエリする利点は、ノイジーネイバーからの分離、オートスケーリング、自動停止などです。
さらに Cloudera Data Engineering を使って Kudu へデータを取り込むことで、DataHub クラスターをストレージ専用にすることも可能です。高度なユーザーは、TBLPROPERTIES で Kudu クラスタ情報を指定し、任意の Kudu DataHub クラスタを対象にクエリできます。
この統合により、以下の最新 CDW 機能も利用可能です。
This may have been caused by one of the following: