zoukankan      html  css  js  c++  java
  • 1.4.6 其他Schema元素

      这里描述了schema.xml中的其他几个重要的元素.

    唯一主键-Unique Key

      uniqueKey元素一篇文档的唯一标记,它几乎总是保证您的应用程序设计,例如,如果你更新索引中的文档,需要用到唯一主键uniqueKey来操作.

    <uniqueKey>id</uniqueKey>

      从solr 4开始,schema默认值和copyFields字段不能用于填充uniqueKey 字段.同样也不能使用UUIDUpdateProcessorFactory来自动生成uniqueKey的值.

    默认搜索字段

      如果使用Lucene的查询解析器,没有指定名称的查询使用默认的defaultSearchField对应的字段.DisMax和Extended DisMax查询解析器不会使用这个默认值.

    警告:
        defaultSearchField已经废弃,在solr3.6以及更高版本.相应的,可以使用df请求参数.在某些时候,defaultSearchField可能会被移除.

     关于更多的查询解析器的信息,参考Query Syntax and Parsing

    查询解析器的默认操作

      在查询多个词(term)时,solr既可以返回全部词汇都包含的文档,也可以返回部分词汇包含的文档.解析器的默认操作既不是DisMax也不是Extended DisMax

    .默认操作为OR.

    警告:
        查询解析器默认操作参数在solr3.6以及更高版本已经废弃,可以在请求处理器(handler)中设置q.op参数来代替.

    Similarity-相似度

      Similiarity是一个Lucene类,用来评分一个文档.这个类可以改变,以便提供一个自定义的排序.对于solr4,你可以为每一个字段配置一个不同的similarity.意思就是评分一个文档,将会依赖于每个字段(filed)的不同而不同.尽管如此,仍需要在schema.xml中配置一个全局性的similarity,使暗含的DefaultSimilarityFactory实例使用.

      全局的<similarity>声明可以指定一个自定义的similarity实现,用来让solr处理索引时使用.similarity可以直接通过关联一个无参构造器的类的名称来指定.

    <similarity class="solr.DefaultSimilarityFactory"/>

       或者关联一个SimilarityFactory的实现,包含一些可选的初始化参数:

    <similarity class="solr.DFRSimilarityFactory">
        <str name="basicModel">P</str>
        <str name="afterEffect">L</str>
        <str name="normalization">H2</str>
        <float name="c">7</float>
    </similarity>

       solr4开始,similarity工厂可以在个别的字段类型中指定:

    <fieldType name="text_ib">
        <analyzer/>
        <similarity class="solr.IBSimilarityFactory">
            <str name="distribution">SPL</str>
            <str name="lambda">DF</str>
            <str name="normalization">H2</str>
        </similarity>
    </fieldType>           

       这个例子中使用了IBSimilarityFactory,还有几个其他的similarity实现需要使用到,对于solr4.2来说,添加了SweetSpotSimilarityFactory.其他的选项还包括BM25SimilarityFactory,DFRSimilarityFactory,SchemaSimilarityFactory等.更多的细节,请参考similarity factories

     相关主题

      SchemaXML-Miscellaneous Settings

      UniqueKey

  • 相关阅读:
    uvm_cookbook--sequences--wait for a signal
    Makefile目标文件搜索(VPATH和vpath
    git stash
    vuex-persist,解决vuex中的数据刷新页面之后丢失的问题
    element表格中的输入框有时会存在输入不上的情况
    简单 Linux 文件系统?
    Shell 脚本是什么?
    什么是BASH?
    如何规划一台 Linux 主机,步骤是怎样?
    什么是GUI?
  • 原文地址:https://www.cnblogs.com/a198720/p/4286767.html
Copyright © 2011-2022 走看看