【问题标题】:Identifying strings in documents, with nutch+solr?使用 nutch+solr 识别文档中的字符串?
【发布时间】:2010-08-17 21:50:26
【问题描述】:

我正在寻找一种搜索解决方案,该解决方案将识别字符串(公司名称)并将这些字符串用于 Solr 中的搜索和构面。

我是 Nutch 和 Solr 的新手,所以我想知道这是在 Nutch 中还是在 Solr 中最好。一种解决方案是在 Nutch 中生成一个解析器,用于识别有问题的字符串,然后索引公司名称,然后映射到 Solr 值。我不确定如何,但我想这也可以直接从文本中在 Solr 中完成?

在 Nutch 或 Solr 中进行此字符串识别是否有意义,Solr 或 Nutch 中是否有一些功能可以帮助我?

谢谢。

【问题讨论】:

  • 1.源文件在哪里? 2. 谁提供公司名称列表?
  • @ms: 1. 源文档位于一组网站上,我使用 nutch 抓取它们。 2. 我将自己维护公司名称列表,无论是在数据库中还是在纯 XML 文件中

标签: solr nutch


【解决方案1】:

您可以将 NER 库(参见 opennlp、lingpipe、gate)嵌入到自定义解析器中,生成新字段并相应地创建索引过滤器。这并不是特别困难,与在 SOLR 方面执行此操作相比的优势在于您可以从 mapreduce 的可扩展性中获益(NLP 任务通常需要大量 CPU)。 有关如何在 mapreduce 中嵌入 GATE 的示例,请参阅 Behemoth

【讨论】:

    【解决方案2】:

    Nutch 与 Solr 一起使用,通过 Solr HTTP API 将爬取的数据索引到 Solr。您可以通过调用 solrindex 命令触发索引。有关如何设置的详细信息,请参阅this page

    为了能够提取公司名称,我将在 Solr 中添加必要的代码。我会使用UpdateRequestProcessor。它允许在索引过程中添加一个额外的步骤,以在被索引的文档中添加额外的字段。您的 UpdateRequestProcessor 将用于检查 Nutch 发送给 Solr 的文档,从文本中提取公司名称并将它们作为新字段添加到文档中。 Solr 会索引文档+您添加的字段。

    【讨论】:

    • 我昨天试了一下,这似乎是一种比在 Nutch 中更灵活的方法,尽管我发现 Solr 的这部分文档有点不足,但我现在得到了一些东西。谢谢帕斯卡!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多