2017-03-04 79 views
0

我想知道是否有任何可靠的方法從物理位置創建火花流?我正在使用'textFileStream',但似乎它主要用於HDFS文件。如果您看到該函數的定義,它會顯示「創建一個監視Hadoop兼容文件系統的輸入流」Apache Spark從文件夾流(不是HDFS)

回答

2

您是否暗示HDFS不是物理位置?有物理上存在的datanode目錄...

您應該能夠使用textFile和file:// URI,但需要確保羣集中的所有節點都可以從該位置讀取。

從Hadoop兼容文件系統的定義。

選擇使用哪個文件系統來自用於引用它的URI方案 - 任何文件路徑上的前綴hdfs:表示它指的是HDFS文件系統; file:到本地文件系統,s3:到Amazon S3,ftp:FTP,swift:OpenStackSwift,等等。

有一個新的架構添加到Hadoop的

需要通過相關的Java JAR文件提供Hadoop的明確整合其他文件系統,本機二進制文件和配置參數
+0

對不起,我通過UNIX/Windows文件系統意味着物理位置。我試圖在Windows中使用本地核心進行復制,但似乎存在一些問題,即只能在更改文件時才能讀取,然後在火花作業運行時移動文件。 –

+1

是的,Spark流文檔說「必須在dataDirectory中創建文件,方法是將它們自動移動或重命名爲數據目錄」。意思是,不讀取現有文件。追加到文件不會工作 –

+0

@Satyabrat這是否回答了您的問題? –