私のマシンから、スキームcore-site.xml
を認識するgs://
ように Hadoop を構成し、Hadoop ライブラリとして gcs-connector-1.2.8.jar を追加しました。実行hadoop fs -ls gs://mybucket/
して、期待される結果を得ることができます。ただし、次を使用してJavaからアナログを実行しようとすると:
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(conf);
FileStatus[] status = fs.listStatus(new Path("gs://mybucket/"));
ではなくローカル HDFS のルートの下にファイルを取得しますgs://mybucket/
が、それらのファイルにはgs://mybucket
. fsを取得する前にconfを変更すると、conf.set("fs.default.name", "gs://mybucket");
GCSでファイルを見ることができます。
私の質問は次のとおり
です。1.これは予想される動作ですか?
2. Google クラウド ストレージ クライアント API とは対照的に、この Hadoop FileSystem API を使用することに不利な点はありますか?