すべてのプロダクト
Search
ドキュメントセンター

DataWorks:DataWorks on EMR のクラスター設定に関するベストプラクティス

最終更新日:Aug 21, 2026

DataWorks では、EMR DataLake クラスターを EMR コンピュートエンジンとして登録できます。その後、Hive、MapReduce、Presto、Spark SQL などのサービスのノードを作成できます。これにより、EMR タスクのワークフローの設定、ジョブのスケジューリング、メタデータの管理が可能になります。このトピックでは、DataWorks で EMR タスクを実行するための DataLake クラスターの設定に関するベストプラクティスについて説明します。

背景

  • DataWorks で EMR タスクを実行する際、さまざまな EMR コンポーネントを使用でき、それぞれに最適な設定があります。詳細については、「EMR コンポーネントの設定」をご参照ください。

  • EMR タスクで利用可能なメタデータストレージのオプションは、DataWorks ワークスペースのモードによって異なります。詳細については、「メタデータストレージソリューションの選択」をご参照ください。

DataWorks で EMR ジョブとともに DataLake クラスターを使用する際の開発プロセスと主要な考慮事項については、「DataWorks on EMR ユーザーガイド」をご参照ください。

EMR コンポーネントの設定

  • Kyuubi

    本番環境では、kyuubi_java_opts のメモリは 10g 以上、kyuubi_beeline_opts は 2g 以上に設定することを推奨します。

  • Spark

    • デフォルトでは、Spark コンポーネントのメモリ割り当ては小さくなっていますが、spark-submit コマンドにメモリ設定を追加することで、ワークロードに合わせてこの割り当てを調整できます。

    • EMR クラスターのサイズに基づいて、次の Spark プロパティを適切な値に調整します: spark.driver.memory、spark.driver.memoryOverhead、および spark.executor.memory。

    重要
    • DataWorks では、リネージは EMR Hive、EMR Spark、EMR Spark SQL ノードでのみサポートされています。EMR Hive ノードはテーブルレベルと列レベルの両方のリネージをサポートしますが、Spark ベースのノードはテーブルレベルのリネージのみをサポートします。

    • Spark の場合、リネージをサポートしているのは Spark 2.x のみです。Spark 3.x はサポートしていません。

    Spark の設定の詳細については、「Spark のメモリ管理」をご参照ください。

  • HDFS

    EMR クラスターのサイズに応じて、次の HDFS パラメーターを適切な値に調整します: hadoop_namenode_heapsize、hadoop_datanode_heapsize、hadoop_secondary_namenode_heapsize、および hadoop_namenode_opts。

メタデータストレージの選択

標準モードの DataWorks ワークスペースで開発環境と本番環境を隔離するには、DataWorks の [設定センター] > [データソース] セクションに、開発環境用と本番環境用に 2 つの異なる EMR クラスターを登録する必要があります。さらに、データ隔離のため、2 つのクラスターのメタデータを別々の ApsaraDB RDS データベースに保存する必要があります。