当前位置: 首页 > news >正文

做网站的相关规定手机百度免费下载

做网站的相关规定,手机百度免费下载,有没有教做健身餐的网站,重庆潼南网站建设哪家便宜Solr是一个开源的搜索平台,基于Apache Lucene库构建,主要用于提供全文搜索的功能。它被设计为一个高度可靠、可扩展的搜索应用服务器。以下是Solr的一些主要使用场景: 全文搜索:Solr最核心的功能是提供全文搜索,它可以…

Solr是一个开源的搜索平台,基于Apache Lucene库构建,主要用于提供全文搜索的功能。它被设计为一个高度可靠、可扩展的搜索应用服务器。以下是Solr的一些主要使用场景:

  1. 全文搜索:Solr最核心的功能是提供全文搜索,它可以对大量文档进行索引,并支持快速、复杂的搜索查询。这对于需要在大量数据中快速找到特定信息的网站或应用程序非常有用。

  2. 电子商务搜索:在线商店可以使用Solr来提供产品搜索功能,包括过滤、排序、推荐等。Solr可以提高搜索的相关性和性能,从而提升用户体验和销售额。

Solr索引采用倒排索引。倒排索引,也称为反向索引,是一种数据结构,用于存储一个单词在文档中出现的位置。这种结构使得搜索操作能够迅速找到包含特定单词的所有文档。

在Solr中,倒排索引的工作原理可以概括如下:

  1. 索引创建:当文档被添加到Solr中时,Solr首先对文档进行解析,提取出索引字段中的文本内容。然后,Solr使用分词器(Tokenizer)将文本分解成一系列的词汇单元(Terms),并对这些词汇进行标准化处理(如小写化、同义词扩展等)。

  2. 词汇映射:处理后的词汇会被映射到一个内部的唯一标识符(Term ID)。同时,Solr会记录每个词汇出现的所有文档列表。

  3. 倒排列表:Solr构建了一个倒排列表,其中每个唯一的词汇都是一个索引项,指向包含该词汇的所有文档的列表。这个列表通常被称为文档ID的集合。

  4. 查询处理:当用户发起搜索请求时,Solr会解析查询语句,找到所有匹配的词汇,并使用倒排列表快速定位到这些词汇出现的文档集合。

  5. 结果合并:Solr会根据查询的复杂性(如使用布尔运算符、范围查询等)合并这些文档集合,然后根据相关性排序算法对结果进行排序,最后返回给用户。

Solr的Function Query(函数查询)是一种强大的查询机制,它允许用户在搜索时执行复杂的计算和操作。Function Queries可以对字段值进行实时的数学、统计或其他类型的函数计算,然后将结果用于过滤、排序或影响查询的相关性得分。

根据搜索结果中提供的信息,以下是对Solr Function Query的一些介绍:

  1. 使用方式:Function Queries可以通过明确的QParser使用,例如funcfrange。例如,q={!func}div(popularity,price)fq={!frange l=1000}customer_ratings这样的查询表达式。

  2. 在Sort表达式中使用:Function Queries也可以在排序表达式中使用,例如sort=div(popularity,price) desc, score desc,这将首先根据popularity除以price的结果降序排序,然后根据得分进行降序排序。

  3. 函数查询的类型:Solr支持多种内置函数,包括数学函数(如加法、减法、乘法、除法)、统计函数(如平均值、最大值、最小值)、文本函数(如长度、包含)等。

  4. 动态计算:Function Queries可以在查询时动态计算字段值,这使得可以根据实时数据进行搜索,而不是依赖于索引时的静态值。

solr的字符串函数比较缺乏,只有strdist 字符串距离,即字符串相关性。termfreq 字符串文档出现次数。连contain 即是否包含某个字符串,length字符串长度、concat字符串拼接等几个常用的字符串操作都没有实现,使用起来很不方便。比如某个文档中有个标签字段,该标签字段存放着多个标签以逗号隔开的字符串,这时如果想查满足条件的商品 同时带动漫标签的商品排序居前,发现没法满足需求。这时需要实现contain的自定义函数。下面以contain为例

  1. 编写自定义函数类

    • 创建一个新的Java类,该类实现org.apache.lucene.queries.function.ValueSource接口。
    • 在类中实现getValue(int doc)方法,该方法定义了如何为每个文档计算函数值。
    • 如果需要,还可以实现其他方法,如getDefaultValue()createWeight(IndexSearcher searcher)等。
    • 创建一个新的Java类,该类实现org.apache.solr.search.ValueSourceParser接口。
  2. 编译并打包

    • 将编写的自定义函数类编译成.class文件。
    • .class文件打包到一个JAR文件中。
  3. solrconfig.xml中注册函数

    • solrconfig.xml文件的<config>标签内,添加一个<queryResponseWriter type="velocity" />配置,以便能够使用Velocity模板。
    • <config>标签内,添加<lib dir="lib" regex=".*\.jar"/>来包含你的自定义函数JAR文件。
    • 使用<valueSourceParser name="contain" class="your.package.MyCustomFunction"/>来注册你的自定义函数,其中myfunc是你在查询中使用的名称,your.package.MyCustomFunction是你的自定义函数类的全限定名。
  4. 在查询中使用自定义函数

    • 在Solr查询中,你可以通过func QParser来使用自定义函数,例如:q={!func}contain(field,'动漫')
    • 你也可以在排序或过滤中使用自定义函数,例如:sort=contain(field,'动漫') ascfq={!frange l=0}contain(field,'动漫')
public FunctionValues getValues(Map arg0, AtomicReaderContext arg1) throws IOException {final FunctionValues v1 = field.getValues(arg0, arg1);final FunctionValues v2 = val.getValues(arg0, arg1);return new IntDocValues(this) {@Overridepublic int intVal(int arg0) {if(null==v1.strVal(arg0)) return 0;if(null==v2.strVal(arg0)) return 0;if( v1.strVal(arg0).contains(v2.strVal(arg0))) return 1;else return 0;}};}

重启后测试效果可以了

http://www.hrbkazy.com/news/19734.html

相关文章:

  • 自己做企业网站用哪个软件seo案例
  • 凯里网络公司建设网站爆款采集推广引流软件
  • 屯留网站建设网站优化外包费用
  • 建设网站哪家好百度关键词规划师
  • 中韩双语网站制作价格seo资讯
  • 网站建设费专票会计分录安庆seo
  • 企业网站的网址通常包括成人营销管理培训班
  • 哪个网站开发是按月付费的论坛seo设置
  • 如何做自己的游戏网站云搜索app下载
  • wordpress windows 10网络优化工程师吃香吗
  • 网站建设第一步怎么弄爱链在线
  • 怎么做网站缩略图郑州抖音推广
  • 用DW做网站时怎么在新窗口打开福州seo技巧培训
  • 可用来做外链推广的网站上海关键词排名提升
  • 有什么网站可以做婚庆视频企查查在线查询
  • 张家港网站建设早晨设计公司做网络推广哪个网站好
  • 网站代码优化目的百度推广后台登录
  • linux做网站网络课堂做手机关键词快速排名软件
  • 比较权威的房产网站精准营销通俗来说是什么
  • 做cps需要什么样的网站软文范例300字
  • 做网站的一般尺寸网络推广属于什么行业
  • 通用滚轴wordpress官网seo关键词排名系统
  • 建设美食网站的威胁谷歌推广网站
  • 帮人做分销网站违法么网站seo搜索引擎优化教程
  • 如何做电商网站视频找网站公司制作网站
  • 做一个web网站短视频平台推广
  • 中国新闻最新消息大事件seo搜索引擎优化软件
  • 纯静态网站怎么做cdn泉州百度推广咨询
  • 淄博网站排名seo全网模板建站系统
  • 社区网站如何做黑科技引流软件是真的吗