如何在从hdfs加载到s3时解压缩文件?

rggaifut  于 2021-05-31  发布在  Hadoop
关注(0)|答案(2)|浏览(400)

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

ccgok5k5

ccgok5k51#

您可以考虑使用lambda函数在登录s3时解压缩文件,下面是一个链接:
https://medium.com/@johnpaulhayes/how-extract-a-huge-zip-file-in-an-amazon-s3-bucket-by-using-aws-lambda-and-python-e32c6cf58f06

a14dhokn

a14dhokn2#

这个答案帮助我从 .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"

相关问题