我有存储在HDFS和S3中的Avro文件(使用BZIP2压缩),我想将它们加载到Amazon Redshift中 . 复制命令给出错误:
error: Invalid AVRO file
code: 8001
context: Cannot init avro reader from s3 file File header contains an unknown codec
Redshift不支持压缩的Avro文件吗?
如果是这种情况,那么将这些数据加载到Redshift中的下一个最佳选择是什么(不将它们转换回Avro文件而不进行压缩) .
我可以使用sqoop吗?
1 回答
Redshift确实支持压缩的avro文件 .
要加载使用gzip,lzop或bzip2压缩的数据文件,请在copy命令中包含相应的选项:GZIP,LZOP或BZIP2 .
此外,您需要提及avro格式并提供json路径 . 下面是我使用的代码,它的工作原理 .