0

从 hadoop 工作时,我正在尝试使用 MIT jwi wordnet 界面。此接口使用 RAMDictionary 对象,其构造函数需要接收指示 wordnet 文件夹位置的文件。我已将此文件夹复制到 hdfs,但无法从中创建文件对象,只能创建路径。

任何人都知道我该如何解决这个问题?

4

1 回答 1

0

这取决于你想要做什么。

你说你在 Hadoop 上工作。您是否尝试使用 Hadoop 自己处理 WordNet 字典文件?如果是这样,您可能不需要 RAMDictionary,只需要解析器。例如:

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

但是,如果您正在处理其他内容并希望使用 WordNet 词典作为工具来帮助您完成此操作,那么是的,这会稍微复杂一些。你可以:

  1. 将路径转换为文件,如如何将 Hadoop 路径对象转换为 Java 文件对象中所述(但接受的答案表明这是不明智的)
  2. 扩展 JWI 以使用路径而不是文件
  3. 远程使用 WordNet。abbreviations.com提供了一个 REST 接口。如果这不合适,您可以自己编写,或者您甚至可以将 WordNet 导入数据库(例如 Titan 或 neo4j),然后从 Hadoop 集群中的任何位置进行搜索。
于 2015-08-25T09:53:36.860 回答