3

Ruby を使用して HDFS Api を操作する方法はありますか? 私が理解できるように、多言語ファイル Api はなく、唯一の方法はネイティブ Java Api を使用することです。JRuby を使用してみましたが、この解決策は不安定でネイティブではありません。また、HDFS Thrift Api も調べましたが、完全ではなく、多くの機能 (インデックス付きファイルへの書き込みなど) も不足しています。

JRuby または Thrift Api を使用する以外に、Ruby を使用して HDFS を操作する方法はありますか?

4

1 に答える 1

8

あなたが求めているものに合う github には 2 つのプロジェクトがあります。 ruby-hdfsは、Ruby の HDFS へのネイティブ C バインディングを提供します。 ganapatiは Thrift サーバーとインターフェースします。

ファイル システム シェルに対して直接システム コールを行うこともできます。例えば:

cmd = "hadoop fs -mkdir #{hdfs_path}"
cmd += " 2> /dev/null"
system(cmd)
if $? == 0
  puts 'ok'
  exit(0)
else
  puts "Error: failed to create hdfs://#{hdfs_path}"
  exit(2)
end
于 2011-01-24T09:27:58.767 に答える