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