2017-01-27 137 views
0

我是試圖上傳到AWS S3存儲一個zip文件獲取和閱讀文本文件讀取壓縮文件

代碼我試圖

var ZipFileList = spark.sparkContext.binaryFiles(/path/); 

    var unit = ZipFileList.flatMap { 
     case (zipFilePath, zipContent) => 
      { 
      val zipInputStream = new ZipInputStream(zipContent.open()) 

      val zipEntry = zipInputStream.getNextEntry() 
      println(zipEntry.getName) 
      } 
     } 

,但它提供了一個錯誤單元所需traversableOnce

val files = spark.sparkContext.wholeTextFiles(/path/)) 
    files.flatMap({case (name, content) => 
     unzip(content) //gives error "type mismatch; found : Unit required: scala.collection.GenTraversableOnce[?]" 
    }) 

是有任何其他方式來讀取內部文件內容一個zip文件... zip文件包含.json文件,我想實現的是讀取和解析所有這些文件

回答

0

您實際上並沒有返回unzip()命令中的數據,對嗎?我認爲這是問題的一部分

+0

有沒有辦法解壓zipEntry? – rahul

+0

不是我曾經經歷過的一個領域...你必須在那裏做你自己的在線研究恐怕 –

+0

那麼我有一種工作方式,首先下載zip文件,然後在本地解壓縮然後上傳解壓縮火花工作.. :) – rahul