parallel.cluster.Hadoop
mapreducer、mapreduce および tall 配列用の Hadoop クラスター
コンストラクター
説明
parallel.cluster.Hadoop オブジェクトは、mapreducer、mapreduce および tall 配列を設定するための、クラスターへのアクセスを提供します。
プロパティ
parallel.cluster.Hadoop オブジェクトには以下のプロパティがあります。
プロパティ | 説明 |
---|---|
AdditionalPaths | ワーカーの MATLAB 検索パスに追加するフォルダー (文字ベクトル、string、string 配列、または文字ベクトルの cell 配列として指定) |
AttachedFiles | mapreduce 呼び出し中にワーカーに送信されるファイルおよびフォルダー (文字ベクトル、string、string 配列、または文字ベクトルの cell 配列として指定) |
AutoAttachFiles | ファイルを自動添付するかどうかを指定 |
ClusterMatlabRoot | ワーカーが使用する MATLAB へのパスを指定 |
HadoopConfigurationFile | Hadoop に渡されるアプリケーション構成ファイル |
HadoopInstallFolder | ローカル マシン上の Hadoop のインストール場所 |
HadoopProperties | Hadoop に渡される名前/値プロパティの組み合わせのマップ |
LicenseNumber | オンライン ライセンスで使用するライセンス番号 |
RequiresOnlineLicensing | クラスターがオンライン ライセンスを使用するかどうかを指定 |
SparkInstallFolder | ローカル マシン上の Spark のインストール場所 |
SparkProperties | Spark に渡されるプロパティの名前と値のペアのマップ |
計算をワーカーにオフロードするときに、クライアント上での計算に必要なファイルもすべてワーカー上で使用可能でなければなりません。既定で、クライアントはそれらのファイルを検出して追加しようとします。自動検出をオフにするには、AutoAttachFiles
プロパティを false
に設定します。ソフトウェアがいずれかのファイルを検出できない場合や、クライアントからワーカーへのファイルの送信速度が遅い場合には、以下のいずれかのオプションを使用します。
ワーカー上でアクセスできないフォルダーにファイルが含まれている場合は、
AttachedFiles
プロパティを設定します。指定した各ファイルが、クラスターによってクライアントからワーカーにコピーされます。ワーカー上でアクセスできるフォルダーにファイルが含まれている場合は、代わりに
AdditionalPaths
プロパティを設定できます。AdditionalPaths
プロパティを使用して各ワーカーの MATLAB® 検索パスにパスを追加し、クライアントからワーカーへの不必要なファイルのコピーを回避します。
HadoopProperties
を使用すると、Hadoop の構成プロパティをオーバーライドできます。プロパティのリストは、Hadoop® のドキュメンテーションを参照してください。
SparkInstallFolder
は、既定で環境変数 SPARK_HOME
に設定されます。これは、Hadoop での tall 配列の評価には必須です (ただし、mapreduce の場合は必須でない)。正しく構成されたクラスターの場合、必要なのはインストール フォルダーの設定のみです。
SparkProperties
を使用すると、Spark の構成プロパティをオーバーライドできます。プロパティのリストは、Spark® のドキュメンテーションを参照してください。
ヘルプ
詳細なヘルプについては以下を入力してください。
help parallel.cluster.Hadoop
メモリのプロパティの指定
Spark 対応 Hadoop クラスターでは、使用可能なメモリ量に制限が設定されます。ワークフローをサポートするため、これらの制限を調整しなければなりません。
収集するデータのサイズ
クライアントに収集されるデータ量は、Spark のプロパティにより制限されます。
spark.driver.memory
spark.executor.memory
単一の Spark タスクから収集するデータ量は、これらのプロパティに適合しなければなりません。単一の Spark タスクは HDFS からの 1 データ ブロックを処理します。これは既定で 128 MB のデータです。元のデータの大部分を含む tall 配列を収集する場合は、必ずこれらのプロパティが適合するように設定しなければなりません。
これらのプロパティが小さすぎる値に設定された場合、以下のようなエラーが表示されます。
Error using tall/gather (line 50) Out of memory; unable to gather a partition of size 300m from Spark. Adjust the values of the Spark properties spark.driver.memory and spark.executor.memory to fit this partition.
プロパティは、クラスターの既定の設定か MATLAB 上で直接調整します。プロパティを MATLAB で調整するには、クラスターの SparkProperties
プロパティに名前と値のペアを追加します。以下に例を示します。
cluster = parallel.cluster.Hadoop; cluster.SparkProperties('spark.driver.memory') = '2048m'; cluster.SparkProperties('spark.executor.memory') = '2048m'; mapreducer(cluster);
MATLAB ワーカーの作業メモリサイズの指定
MATLAB ワーカーの作業メモリ量は、Spark のプロパティにより制限されます。
spark.yarn.executor.memoryOverhead
既定では、これは 2.5 GB に設定されます。arrayfun
、cellfun
またはカスタム データベースを使用して大量のデータを 1 回で生成する場合、通常はこの値を増加しなければなりません。Spark Executor プロセスが失われたりクラッシュが発生した場合は、この値を増加することを推奨します。
これらのプロパティは、クラスターの既定の設定か MATLAB 上で直接調整できます。プロパティを MATLAB で調整するには、クラスターの SparkProperties プロパティに名前と値のペアを追加します。以下に例を示します。
cluster = parallel.cluster.Hadoop; cluster.SparkProperties('spark.yarn.executor.memoryOverhead') = '4096m'; mapreducer(cluster);
バージョン履歴
R2014b で導入