Spark- Spark從SFTP中讀取zip壓縮文件數據做計算


我們遇到個特別的需求,一個數據接入的流程跑的太慢,需要升級為用大數據方式去處理,提高效率。

數據:

  數據csv文件用Zip 壓縮后放置在SFTP中

數據來源:

  SFTP

數據操作:

  文件和它的壓縮包一致,后綴不同。文件名中包含渠道、日期、操作標記("S"追加,"N"全量,"D"刪除)

 

升級前的操作方式:

  shell腳本將文件從SFTP下載到Linux服務器本地,解壓。

  歷史數據也下載下來。

  根據文件名中的操作標記,對歷史數據作操作。

  把新的結果數據上傳回SFTP。

  SFTP上的zip數據移動到備份目錄。

 

升級后的操作方式:

  用SFTPUtil工具類將ZIP文件轉為輸入流作為ZipInputStream的實例化的入參

  將解壓流作為Hadoop的輸出流的入參,此時。

  用Spark讀取Hadoop的文件抽象RDD

  對於兩文件

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM