gpt4 book ai didi

hadoop - 在Spark中读取级联序列文件

转载 作者:行者123 更新时间:2023-12-02 21:36:28 26 4
gpt4 key购买 nike

我们有一些HDFS文件被编写为级联序列文件,我们希望使用Apache Spark对其进行处理。我尝试使用JavaPairRDD读取键值对,如下所示:

    JavaPairRDD<String, String> input = ctx.sequenceFile("file-path", String.class, String.class);

运行此作业时,出现以下错误:
java.io.IOException: Could not find a deserializer for the Key class: 
'cascading.tuple.Tuple'.
Please ensure that the configuration 'io.serializations' is properly configured,
if you're using custom serialization.

我是使用Apache Spark的新手。我尝试在Spark上下文对象中设置序列化类,但是仍然出现此错误。我还没有在Spark中使用级联序列文件找到单个示例操作系统。任何帮助,将不胜感激。

最佳答案

我找到了解决方案。要取消序列化,必须设置hadoop配置。可以这样完成:

  JavaSparkContext ctx = new JavaSparkContext(sparkConf);
ctx.hadoopConfiguration().set("io.serializations","cascading.tuple.hadoop.TupleSerialization");

这是因为hadoop从hadoop conf而不是spark conf获取其io.serialization。因此,在sparkConf中设置此io.serializations是没有用的。我希望它可以帮助面临此问题的人。

关于hadoop - 在Spark中读取级联序列文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31863920/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com