Sparkは汎用ビッグデータ分析エンジンです。Sparkは高性能、使いやすさ、そして幅広い用途を特徴としています。 Sparkを使用して複雑なメモリ分析を実行したり、大規模で低レイテンシのデータ分析アプリケーションを構築したりできます。DataWorksは、Cloudera's Distribution Including Apache Hadoop(CDH)Sparkノードを提供しており、DataWorksでSparkタスクを開発し、定期的にスケジュールすることができます。このトピックでは、CDH Sparkノードを作成および使用する方法について説明します。
前提条件
Alibaba Cloud CDH クラスタが作成され、DataWorksに登録されていること。詳細については、「CDH または CDP クラスタを DataWorks に登録する」をご参照ください。
(RAM ユーザーを使用してタスクを開発する場合に必要)目的の RAM ユーザーがDataWorks ワークスペースにメンバーとして追加され、[開発] ロールまたは [ワークスペース管理者] ロールが割り当てられていること。ワークスペース管理者ロールは、必要以上に多くの権限を持っています。 ワークスペース管理者ロールを割り当てる際には注意してください。メンバーの追加方法の詳細については、「ワークスペースメンバーを追加し、ロールを割り当てる」をご参照ください。
説明Alibaba Cloudアカウントを使用している場合は、この操作をスキップできます。
Hive データソースがワークスペースに追加され、データソースがネットワーク接続テストに合格していること。詳細については、「データソースを追加および管理する」をご参照ください。
CDH Sparkノードが作成されていること。
準備:Sparkタスクコードを準備し、JARパッケージを取得する
DataWorksを使用してCDH Sparkタスクをスケジュールする前に、CDHでSparkタスクコードを準備し、タスクコードをコンパイルしてJARパッケージを生成する必要があります。 Sparkタスクコードの準備の詳細については、「概要」をご参照ください。
取得したJARパッケージをDataWorks コンソールにアップロードする必要があります。 これにより、DataWorksはCDH Sparkタスクを定期的にスケジュールできます。
手順
CDH Sparkノードの構成タブで、次の操作を実行して、CDH Sparkノードに基づいてタスクを開発します。
CDH JARリソースを作成する
CDH JARリソースを作成します。
オンプレミス マシンのJARパッケージを、JARリソースが格納されているディレクトリにアップロードします。 [ファイルコンテンツ] の横にある [アップロード] をクリックして、JARパッケージをアップロードします。
[ストレージパス]、[データソース]、および [リソースグループ] パラメーターを構成します。
[保存] をクリックします。
CDH JARリソースを参照します。
作成した CDH Spark ノードの構成タブに移動します。
Data Studio ページの左側のナビゲーションウィンドウで、[リソース管理] をクリックします。 [リソース管理] ペインで、目的のディレクトリを見つけ、ディレクトリ名を右クリックし、[リソースの参照] を選択します。
##@resource_reference 形式の句がノードの構成タブに表示されている場合、リソースは正常に参照されています。 次に、次のコードを実行します。 次のコードの情報は、実際の情報に置き換える必要があります。 情報には、リソースパッケージ名、バケット名、およびディレクトリが含まれます。
##@resource_reference{"spark_examples_2.11_2.4.0.jar"} spark_examples_2.11_2.4.0.jar
CDH Sparkノードのコードを編集する
CDH Sparkノードのコードを変更し、spark-submit コマンドを追加します。 次のコードは例を示しています。
重要CDH Sparkノードのコードを記述するときは、コメントを追加しないでください。 コメントを追加すると、CDH Sparkノードでタスクを実行したときにエラーが報告されます。 CDH Sparkノードのコードを編集するには、次のサンプルコードを参照する必要があります。
##@resource_reference{"spark-examples_2.11-2.4.0.jar"} spark-submit --class org.apache.spark.examples.SparkPi --master yarn spark-examples_2.11-2.4.0.jar 100説明org.apache.spark.examples.SparkPi: コンパイル済みJARパッケージ内のタスクのメイン クラス。spark-examples_2.11-2.4.0.jar: アップロードしたJARパッケージの名前。
CDH Sparkノードでタスクを実行する
CDH Sparkノードの構成タブの右側のナビゲーションウィンドウにある [デバッグ構成] タブで、[計算リソース] および [リソースグループ] パラメーターを構成します。
計算リソースに、DataWorksに登録したCDH クラスタの名前を選択します。
CDH 計算リソース間でネットワーク接続テストに合格したスケジューリング用のリソースグループを選択します。 詳細については、「ネットワーク接続ソリューション」をご参照ください。
説明タスク実行に必要なリソースに基づいて、[計算用 CU] パラメーターを構成することもできます。 このパラメーターのデフォルト値は
0.25です。[実行] をクリックして、ノードでタスクを実行します。
ノードでタスクを定期的に実行する場合は、ビジネス要件に基づいてスケジューリング情報を構成します。 詳細については、
ノードのタスクが構成されたら、タスクをコミットしてデプロイします。 詳細については、
ノードのタスクをデプロイした後、オペレーションセンターでタスクのステータスを表示します。 詳細については、「オペレーションセンターの概要」をご参照ください。