gpt4 book ai didi

hadoop - 如何从 Hadoop 中的 HDFS 中的文件读取序列化对象

转载 作者:可可西里 更新时间:2023-11-01 16:23:04 28 4
gpt4 key购买 nike

我已经将一个 LibSVM 类型的对象序列化到一个名为 j48.model 的文件中。此文件已传输到 HDFS 文件系统中。

现在,在 hadoop mapreduce 代码中,我如何反序列化该对象并将其读回到 LibSVM 类的实例中?我已经将与 LIBSVM 相关的 .jar 文件作为外部 jar 文件包含到 ma reduce 项目中。

哪些 JAVA 方法可以帮助我将文件 j48.model 的内容读入 LibSVM 对象?

最佳答案

当您打开 HDFS URL 时,它会返回一个 InputStream。

FileSystem fs = FileSystem.get(new Configuration());
InputStream in = fs.open(new Path("your uri"));

您可以将此输入流包装在 ObjectInputStream 中:

ObjectInputStream objReader = new ObjectInputStream(in);

并从中读取你的对象:

LibSVM lib = (LibSVM)objReader.readObject();

关于hadoop - 如何从 Hadoop 中的 HDFS 中的文件读取序列化对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11491542/

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