网站大量收购独家精品文档,联系QQ:2885784924

Isolr+facet学习笔记.docVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Isolrfacet学习笔记

SOLR FACET学习笔记 目录 一. Facet简介 1 二. Facet字段 2 1. 适宜被Facet的字段 2 2. Facet字段的要求 2 3. 特殊情况 2 三. Facet组件 3 四. Facet查询 3 1. Field Facet 3 1.1 facet.prefix 4 1.2 facet.sort 4 1.3 facet.limit 5 1.4 facet.offset 5 1.5 facet.mincount 5 1.6 facet.missing 5 1.7 facet.method 5 1.8 facet.enum.cache.minDf 5 2. Date Facet 5 2.1 facet.date 5 2.2 facet.date.start 5 2.3 facet.date.end 5 2.4 facet.date.gap 6 2.5 facet.date.hardend 6 2.6 facet.date.other 6 3. Facet Query 7 4. key操作符 8 5. tag操作符和ex操作符 9 五. SolrJ对Facet的支持 11 Facet简介 Facet是solr的高级搜索功能之一,可以给用户提供更友好的搜索体验.在搜索关键字的同时,能够按照Facet的字段进行分组并统计. Facet字段 适宜被Facet的字段 一般代表了实体的某种公共属性,如商品的分类,商品的制造厂家,书籍的出版商等等. Facet字段的要求 Facet的字段必须被索引.一般来说该字段无需分词,无需存储. 无需分词是因为该字段的值代表了一个整体概念,如电脑的品牌”联想”代表了一个整体概念,如果拆成”联”,”想”两个字都不具有实际意义.另外该字段的值无需进行大小写转换等处理,保持其原貌即可. 无需存储是因为一般而言用户所关心的并不是该字段的具体值,而是作为对查询结果进行分组的一种手段,用户一般会沿着这个分组进一步深入搜索. 特殊情况 对于一般查询而言,分词和存储都是必要的.比如CPU类型”Intel 酷睿2双核 P7570”,拆分成”Intel”,”酷睿”,”P7570”这样一些关键字并分别索引,可能提供更好的搜索体验.但是如果将CPU作为Facet字段,最好不进行分词.这样就造成了矛盾,解决方法为,将CPU字段设置为不分词不存储,然后建立另外一个字段为它的COPY,对这个COPY的字段进行分词和存储. schema.xml Facet组件 Solr的默认requestHandler(ponent.SearchHandler)已经包含了Facet组件(ponent.FacetComponent).如果自定义requestHandler或者对默认的requestHandler自定义组件列表,那么需要将Facet加入到组件列表中去. solrconfig.xml Facet查询 进行Facet查询需要在请求参数中加入”facet=on”或者”facet=true”只有这样Facet组件才起作用. Field Facet Facet字段通过在请求中加入”facet.field”参数加以声明,如果需要对多个字段进行Facet查询,那么将该参数声明多次.比如 返回结果: 各个Facet字段互不影响,且可以针对每个Facet字段设置查询参数.以下介绍的参数既可以应用于所有的Facet字段,也可以应用于每个单独的Facet字段.应用于单独的字段时通过 这种方式调用.比如facet.prefix参数应用于cpu字段,可以采用如下形式 facet.prefix 表示Facet字段值的前缀.比如”facet.field=cpufacet.prefix=Intel”,那么对cpu字段进行Facet查询,返回的cpu都是以”Intel”开头的,”AMD”开头的cpu型号将不会被统计在内. facet.sort 表示Facet字段值以哪种顺序返回.可接受的值为true(count)|false(index,lex). true(count)表示按照count值从大到小排列. false(index,lex)表示按照字段值的自然顺序(字母,数字的顺序)排列.默认情况下为true(count).当facet.limit值为负数时,默认facet.sort= false(index,lex). facet.limit 限制Facet字段返回的结果条数.默认值为100.如果此值为负数,表示不限制. facet.offset 返回结果集的偏移量,默认为0.它与facet.limit配合使用可以达到分页的效果. facet.mincount 限制了Facet字段值的最小count,默认为

文档评论(0)

xufugen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档