1

次のような HDFS にある Java プロパティ ファイルを読み取ろうとしています。

try {
    properties.load(new FileInputStream("hdfs://user/hdfs/my_props.properties"));
} catch (IOException e) {
    throw new RuntimeException("Properties file not found.");
}

しかし、うまくいかないようで、「プロパティ ファイルが見つかりません」というメッセージが表示されます。例外。ローカル ファイルへのパスを置き換えると、正常に動作し、ファイルを読み取ることができます。

FileInputStream を使用して HDFS ファイルを読み取ることは可能ですか?

ありがとう!

4

2 に答える 2

2

Hadoop jar を使用する必要があり、HDFS から読み取るファイルシステムも必要であることを願っています。このようなものをコードの前に置く必要があります。

Path pt=new Path("hdfs://user/hdfs/my_props.properties");
FileSystem fs = FileSystem.get(new Configuration());

参照:汎用ファイル システムの FileInputStream

于 2015-03-10T07:00:37.283 に答える