1. 程式人生 > >Spark Streaming--1 檔案預設資料來源

Spark Streaming--1 檔案預設資料來源

檔案資料流:能夠讀取所有HDFS API相容的檔案系統檔案,通過fileStream方法進行讀取 
       Spark Streaming 將會監控 dataDirectory 目錄並不斷處理移動進來的檔案,記住目前不支援巢狀目錄。

  • 檔案需要有相同的資料格式
  • 檔案進入 dataDirectory的方式需要通過移動或者重新命名來實現。
  • 一旦檔案移動進目錄,則不能再修改,即便修改了也不會讀取新資料。 
           如果檔案比較簡單,則可以使用 streamingContext.textFileStream(dataDirectory)方法來讀取檔案。檔案流不需要接收器,不需要單獨分配CPU核。
## 匯入相應的jar包
scala> import org.apache.spark.streaming._
## 建立StreamingContext操作物件
scala> val ssc = new StreamingContext(sc,Seconds(5))
scala> val lines = ssc.textFileStream("hdfs://master:9000/spark/data")
scala> val wordCount = lines.flatMap(_.split("\t")).map(x=>(x,1)).reduceByKey(_+_)
scala> wordCount.print
scala> ssc.start

[
[email protected]
~]# hadoop fs -rm -r ./data1 /spark/data1 //上傳資料至該目錄