0

Hadoop から作業するときに MIT jwi wordnet インターフェイスを使用しようとしています。このインターフェイスは、RAMDictionary オブジェクトを使用します。このオブジェクトのコンストラクターは、wordnet フォルダーの場所を示すファイルを受け取る必要があります。このフォルダーを hdfs にコピーしましたが、そこからファイル オブジェクトを作成することはできず、パスのみを作成できます。

これを回避する方法を知っている人はいますか?

4

1 に答える 1

0

それはあなたがしようとしていることに依存します。

あなたはHadoopで作業していると言っています。WordNet 辞書ファイル自体の処理に Hadoop を使用しようとしていますか? その場合、RAMDictionary は必要なく、パーサーだけが必要になる場合があります。例えば:

// for each line in each WordNet data file
ISynset synset = DataLineParser.getInstance().parseLine(line);
// do stuff with each synset

ただし、何か他のものを処理していて、それを行うためのツールとして WordNet 辞書を使用したい場合は、はい、これは少し複雑です。あなたは出来る:

  1. How to convert a Hadoop Path object into a Java File objectで説明されているように、パスをファイルに変換します(ただし、受け入れられた回答では、これは賢明ではないことが示唆されています)。
  2. ファイルの代わりにパスを操作するように JWI を拡張する
  3. WordNet をリモートで使用します。abbreviations.com が提供する REST インターフェイスがあります。それが適切でない場合は、独自に作成するか、WordNet をデータベース (Titan や neo4j など) にインポートして、Hadoop クラスターの任意の場所から検索することもできます。
于 2015-08-25T09:53:36.860 に答える