我正在用spark用java写一个程序。
我有一个名为“copied\u logs”的javardd,它使用map并从hdfs上的日志中复制几个字段。
现在,我想用bzip2压缩“复制的日志”,然后保存它。我想使用“saveastextfile”函数将这些数据保存在hdfs上。我的压缩和保存代码如下:
CompressionCodec codec = new BZip2Codec();
copied_logs.saveAsTextFile(output_dir + "copied_logs.json", codec);
但我有个错误:
Error:(128, 69) java: incompatible types: org.apache.hadoop.io.compress.CompressionCodec cannot be converted to java.lang.Class<? extends org.apache.hadoop.io.compress.CompressionCodec>
谢谢您。
1条答案
按热度按时间vxf3dgd41#
方法的第二个参数
saveAsTextFile
是类类型(doc)。因此,需要传递.class对象。比如: