zoukankan      html  css  js  c++  java
  • Solr的schema.xml(managedschema)文件

    * 新版改名为managed-schema,没有后缀.xml

    作用:

    schema.xml这个配置文件的根本目的是为了通过配置告诉Solr如何建立索引。
     
    solr的数据结构:
    • document:一个文档、一条记录
      • field:域、属性
    solr通过搜索某个或某些field,返回若干个符合条件的document,或者按搜索的score排序返回。
    如果跟数据库对比,document相当于数据库的表,field相当于表中的字段。而schema.xml就是为了定义一个表的结构(定义各个field的名字、类型、约束、等等)。
     
    schema.xml的基本结构:
    <schema>
    <types>
    <fields>
    <uniqueKey>
    <copyField>
    </schema>
     
    常用的配置说明:
    • field:定义一个document中的各个fields
      • name:必填。该field的名字。前后都有下划线的name是系统保留的名字,比如“_version_”
      • type:必填。类型,对应于fieldType的name
      • default:该field的缺省值
      • indexed:true/false,是否为该field建立索引,以让用户可以搜索它、统计它(facet)
      • stored:true/false,定义这个field是否可以返回给查询者
      • multiValued:true/false,是否可以容纳多个值(比如多个copyField的dest指向它)。如果是true,则该field不能被排序、不能作为uniqueKey
      • required:true/false,告诉solr这个field是否接受空值,缺省为false
      • docValues:true/false,建立document-to-value索引,以提高某些特殊搜索的效率(排序、统计、高亮)
    • copyField:把一个field的内容拷贝到另外一个field中。一般用来把几个不同的field copy到同一个field中,以方便只对一个field进行搜索
      • source:被拷贝的field,支持用通配符指定多个field,比如:*_name
      • dest:拷贝到的目的field
      • maxChars:最大字符数
    • uniqueKey:指定一个field为唯一索引
    • fieldType:定义field的类型,包括下面一些属性
      • name:必填,被field配置使用
      • class:必填,filedType的实现类。solr.TextField是路径缩写,"等价于"org.apache.solr.schema.TextField"
      • multiValued:?
      • positionIncrementGap:指定mutiValued的距离
      • ananlyzer:如果class是solr.TextField,这个配置是必填的。告诉solr如何处理某些单词、如何分词,比如要不要去掉“a”,要不要全部变成小写……
        • type:index或query
        • tokenizer:分词器,比如:StandardTokenizerFactory
        • filter:过滤器,比如:LowerCaseFilterFactory
    • dynamicField:用通配符定义一个field来存在没有被field定义的漏网之鱼
      • name:使用通配符,比如“*_i”,来处理类似“cost_i”之类的field

    引用地址:https://www.jb51.cc/xml/296300.html

  • 相关阅读:
    ACM解题之快速输出杨辉三角形(前68行)
    ACM解题之素矩阵
    ACM解题之回文序列
    python批量修改文件名
    HTML页面导航栏页脚不动,变换中间部分
    VS2013正则表达式应用示例
    <<数学传奇>>概述
    C#在不同平台下DLL的引用问题
    在C++中实现类似Java的“synchronized”
    VS编译完成后自动复制到远程机器
  • 原文地址:https://www.cnblogs.com/live41/p/15736555.html
Copyright © 2011-2022 走看看