zoukankan      html  css  js  c++  java
  • solr特点五: MoreLikeThis(查找相似页面)

    在 Google 上尝试一个查询,您会注意到每一个结果都包含一个 “相似页面” 链接,单击该链接,就会发布另一个搜索请求,查找出与起初结果类似的文档。Solr 使用MoreLikeThisComponent(MLT)和 MoreLikeThisHandler实现了一样的功能。如上所述,MLT 是与标准 SolrRequestHandler集成在一起的;MoreLikeThisHandler与 MLT 结合在一起,并添加了一些其他选项,但它要求发布一个单一的请求。我将着重讲述 MLT,因为使用它的可能性更大一些。幸运的是,不需要任何设置就可以查询它,所以您现在就可以开始查询。

    您可以向请求添加很多 HTTP 查询参数,并且大部分参数都有智能的默认值,因此我将着重讲述使用 MLT 必须了解的参数。(要了解更多的详细信息,请参见 参考资料获得 Solr wiki 的 MLT 页面链接)。

    表 2. MoreLikeThisComponent参数
    参数说明值域
    mlt 在查询时,打开 / 关闭 MoreLikeThisComponent的布尔值。 真 | 假
    mlt.count 可选。每一个结果要检索的相似文档数。 > 0
    mlt.fl 用于创建 MLT 查询的字段。 模式中任何被储存的或含有检索词向量的字段。
    mlt.maxqt 可选。查询词语的最大数量。由于长文档可能会有很多关键词语,这样 MLT 查询可能会很大,从而导致反应缓慢或可怕的 TooManyClausesException,该参数只保留最关键的词语。 > 0

    尝试下面的样例查询,然后检查返回结果中的 moreLikeThis部分:

    http://localhost:8983/solr/rss/select/?q=*%3A*&start=0&rows=10&mlt=true 
      &mlt.fl=description&mlt.count=3
    http://localhost:8983/solr/rss/select/?q=solr&version=2.2&start=0&rows=10 
      &indent=on&mlt=true&mlt.fl=description&mlt.fl=title&mlt.count=3

    MoreLikeThisComponent和 Solr 模式

    MLT 要求字段被储存或使用 检索词向量,检索词向量以一种以文档为中心的方式储存信息。MLT 通过文档的内容来计算文档中关键词语,然后使用原始查询词语和这些新词语创建一个新的查询。提交新查询就会返回其他查询结果。所有这些都可以用检索词向量来完成:只需将termVectors="true"添加到 schema.xml 中的<field>声明。

  • 相关阅读:
    使用 asp.net mvc和 jQuery UI 控件包
    ServiceStack.Redis 使用教程
    HTC T8878刷机手册
    Entity Framework CodeFirst 文章汇集
    2011年Mono发展历程
    日志管理实用程序LogExpert
    使用 NuGet 管理项目库
    WCF 4.0路由服务Routing Service
    精进不休 .NET 4.0 (1) asp.net 4.0 新特性之web.config的改进, ViewStateMode, ClientIDMode, EnablePersistedSelection, 控件的其它一些改进
    精进不休 .NET 4.0 (7) ADO.NET Entity Framework 4.0 新特性
  • 原文地址:https://www.cnblogs.com/lvfeilong/p/12323sdfdfds.html
Copyright © 2011-2022 走看看