1. 程式人生 > >Spark中直接操作HDFS

Spark中直接操作HDFS

Spark作為一個基於記憶體的大資料計算框架,可以和hadoop生態的資源排程器和分散式檔案儲存系統無縫融合。Spark可以直接操作儲存在HDFS上面的資料:

通過Hadoop方式操作已經存在的檔案目錄

val path = new
org.apache.hadoop.fs.Path("hdfs://xxx"); val hdfs = org.apache.hadoop.fs.FileSystem.get( new java.net.URI("hdfs://x", new org.apache.hadoop.conf.Configuration()) ); if(hdfs.exists(path) hdfs.delete(path,false))

   

通過spark自帶的hadoopconf方式操作已經存在檔案目錄 

val hadoopConf = sparkContext.hadoopConfiguration
    val hdfs = org.apache.hadoop.fs.FileSystem.get(hadoopConf)
 if(hdfs.exists(path)){
      //為防止誤刪,禁止遞迴刪除
      hdfs.delete(path,false)
    }