我有一个包含 java 序列化对象的文件,例如“Vector”。我已将此文件存储在 Hadoop 分布式文件系统 (HDFS) 上。现在我打算在其中一个地图任务中读取这个文件(使用方法 readObject)。我想
FileInputStream in = new FileInputStream("hdfs/path/to/file");
由于文件存储在 HDFS 上,因此无法正常工作。所以我想到了使用 org.apache.hadoop.fs.FileSystem 类。但不幸的是,它没有任何返回 FileInputStream 的方法。它所拥有的只是一个返回 FSDataInputStream 的方法,但我想要一个输入流,它可以从文件中读取序列化的 java 对象,如矢量,而不仅仅是 FSDataInputStream 会执行的原始数据类型。
请帮忙!