どこにも答えを見つけることができなかったというこの質問があります。
次の行を使用して、PySpark アプリケーション内にデータをロードしています。
loadFile = self.tableName+".csv"
dfInput= self.sqlContext.read.format("com.databricks.spark.csv").option("header", "true").load(loadFile)
私のクラスター構成は次のとおりです。
- 3 つのノードを持つ Spark クラスターを使用しています。1 つのノードはマスターの起動に使用され、他の 2 つのノードはそれぞれ 1 つのワーカーを実行しています。
- スクリプトを使用して、クラスタの外部からログイン ノードにアプリケーションを送信します。
- このスクリプトは、クラスター展開モードで Spark アプリケーションを送信します。この場合、使用している 3 つのノードのいずれかでドライバーを実行します。
- 入力 CSV ファイルは、グローバルに表示される一時ファイル システム (Lustre) に保存されます。
Apache Spark Standalone では、パーティションを RAM にロードするプロセスはどのようになっていますか?
- 各エグゼキューターがドライバーのノード RAM にアクセスし、そこからパーティションを独自の RAM にロードするということですか? (ストレージ --> ドライバの RAM --> エグゼキュータの RAM)
- 各エグゼキュータがストレージにアクセスし、独自の RAM にロードするということですか? (ストレージ --> エグゼキュータの RAM)
これらのどれでもないのですが、ここで何か不足していますか? このプロセスを自分で確認するにはどうすればよいですか (監視ツール、UNIX コマンド、Spark のどこか)。
これについて深く掘り下げることができるコメントやリソースは非常に役立ちます。前もって感謝します。