如何在从 HDFS 加载到 S3 时解压缩文件?



我有HDFSlzo格式的csv文件我想将这些文件加载到s3,然后加载到snowflake,因为snowflake不提供csv文件格式的lzo压缩,我需要在将这些文件加载到s3时即时转换它。

您可以考虑使用 Lambda 函数在登陆 s3 时解压缩文件,这里有一个链接可以让你到达那里:

https://medium.com/@johnpaulhayes/how-extract-a-huge-zip-file-in-an-amazon-s3-bucket-by-using-aws-lambda-and-python-e32c6cf58f06

这个答案帮助我从.lzo_deflate转换为所需的雪花兼容输出格式:

hadoop jar $HADOOP_HOME/contrib/streaming/hadoop-streaming-0.20.2-cdh3u2.jar 
-Dmapred.output.compress=true 
-Dmapred.compress.map.output=true 
-Dmapred.output.compression.codec=org.apache.hadoop.io.compress.GzipCodec 
-Dmapred.reduce.tasks=0 
-input <input-path> 
-output $OUTPUT 
-mapper "cut -f 2"

最新更新