私はローカルPCにマスタを持っており、2つのサーバをワーカーとして使用しています。 Sparkプログラムを起動すると、まず入力ファイルをインポートする必要があります。正しい入力(現在)のために、私は自分の入力ファイルをマスターと両方の作業者のハードディスクに保存する必要があります(パスは同じでなければなりません)。つまり、同じデータセットを3つの異なる場所に配置する必要があります。どのように私はこれを避けることができ、入力エラーを取得することなく、独自の場所に私のデータセットを格納する?スパーク、入力ファイルへのパス
答えて
これを実行するには、HDFS(Hadoop)などの分散ファイルシステムを使用する必要があります。ファイルの読み込みの2つの例は次のとおりです。
tweets = sc.textFile("hdfs://scrapper.ccs.neu.edu/user/cbw/a1_tweets.txt") # load data from HDFS
words = sc.textFile("hdfs://scrapper.ccs.neu.edu/user/cbw/words*.txt") # load data from HDFS
最初のものは、従来のファイル読み込みで、二番目は、複数のファイルを読み込むようになります*を(ちょうどのような持ちながら、 wholeTextFiles)。
HDFSでファイルを参照する場合は、ホスト名(scrapperなど)を含む完全修飾URLを指定する必要があります。
HDFSのデータはブロックに格納され、すべてのデータノードに格納されます。このファイルシステムに関するメタデータは、ネームノードに格納されます。したがって、データを異なるノードに分散させることになります。また、hadoopはノード間でブロックを送信するタイミングと方法を気にします。
sparkの実行時にHDFSとHADOOP_HOMEが正しく設定されていれば、HDFSがデフォルトのFSになるため、完全なURLは必要ありません。 –
本当、忘れました。念押し有難う! – JorgeGlezLopez
一般的な点は、すべてのワーカーノードから見えるファイルシステムを持つことです。
Sparkは、Hadoop分散ファイルシステム(MapFS)、MapR-FS(MapR-FS)、Cassandra、OpenStack Swift、Amazon S3、Kudu(hereから取得)など幅広い種類のインターフェースが可能です。
ローカルファイルシステムは、前述のようなオプションの1つです。すべてのワーカーに複数のコピーがあります。 「ローカル」ファイルシステムを使用するもう1つのケースは、ネットワークドライブをマウントするか、NASまたはSANのようなものを使用することです。
これらのアプローチのすべて
は、入力ファイルにちょうど別のURIを必要とするが、すべてがシンプルなコールsc.textFile("protocol://path/to/a/file");
- 1. 入力時のファイルへの絶対パス[type = file]
- 2. ファイルへのCロギング入力?
- 3. HTML5からアップロードされたファイルへのパスを入力フィールドにドラッグ&ドロップ
- 4. ファイルからexec()への入力をリダイレクト
- 5. Jarファイル内のa * .jarファイルまたはファイルへの入力ストリーム?
- 6. TestNGへの入力の入力
- 7. 入力テキストの解析とファイルへの出力
- 8. スパークのSQLデータフレーム - 輸入sqlContext.implicits._
- 9. 永続スパークは、ストリーミング出力
- 10. Nutchの1.10入力パスは/ linkdb /現在
- 11. Hadoop Mapperクラスの入力パスを取得
- 12. ゴーストのブラウザへの入力
- 13. 選択ボックスへの入力
- 14. Flaskアプリからのスパークへのアクセス
- 15. 私のファイルへのアンドロイドのパス
- 16. 入力ファイルのみ.xlsファイル
- 17. 別のドライブにあるファイルへのパス?
- 18. ベース名のないファイルへのパス
- 19. app.config内の* .dllファイルへのパス
- 20. MS AccessフォームExcelファイル内の特定のフィールドへの入力
- 21. Hadoop入力ファイル
- 22. 入力::ファイル空
- 23. ファイル入出力
- 24. openFileOutputを使用したファイルへのパス
- 25. InstallShield LE - ファイルへの相対パス
- 26. py2exeでexeファイルへのパスを取得
- 27. CDからディレクトリへのパス(ファイル内のパス)
- 28. インタラクティブなPythonゲームへの入力のための入力ポップアップウィンドウ
- 29. 辞書のような辞書への入力の入力
- 30. 関数fscanf()ファイルへの書き込み入力
使用分散ファイルシステムで終わりますか? – zero323
ファイルをhdfsに置き、そこからspark-jobでロードします。 – Mahendra
@ zero323、Mahendra、ありがとうございます – Guforu