新手请教solr spellcheck问题

问题描述

solrconfig配置:<searchComponentname="spellcheck"class="solr.SpellCheckComponent"><strname="queryAnalyzerFieldType">string</str><lstname="spellchecker"><strname="name">default</str><strname="field">text</str><strname="classname">solr.DirectSolrSpellChecker</str><strname="distanceMeasure">internal</str><floatname="accuracy">0.5</float><intname="maxEdits">2</int><intname="minPrefix">1</int><intname="maxInspections">5</int><intname="minQueryLength">4</int><floatname="maxQueryFrequency">0.01</float><!--uncommentthistorequiresuggestionstooccurin1%ofthedocuments<floatname="thresholdTokenFrequency">.01</float>--></lst></searchComponent><requestHandlername="/spell"class="solr.SearchHandler"startup="lazy"><lstname="defaults"><strname="df">text</str><strname="spellcheck.dictionary">default</str><strname="spellcheck">on</str><strname="spellcheck.extendedResults">true</str><strname="spellcheck.count">10</str><strname="spellcheck.alternativeTermCount">5</str><strname="spellcheck.maxResultsForSuggest">5</str><strname="spellcheck.collate">true</str><strname="spellcheck.collateExtendedResults">true</str><strname="spellcheck.maxCollationTries">10</str><strname="spellcheck.maxCollations">5</str></lst><arrname="last-components"><str>spellcheck</str></arr></requestHandler访问链接http://10.9.47.205/solr/oasearch/spell?q=h&spellcheck=true&spellcheck.collate=true&spellcheck.build=true结果:<response>-<lstname="responseHeader"><intname="status">0</int><intname="QTime">25</int></lst><strname="command">build</str>-<resultname="response"maxScore="0.78987104"start="0"numFound="5">-<doc><strname="id">45</str><strname="phone">42434</str><intname="age">23</int><strname="name">highlight</str><longname="_version_">1473768737487192064</long></doc>........这里有很多结果</result>-<lstname="spellcheck">-<lstname="suggestions"><boolname="correctlySpelled">false</bool></lst></lst>看别人和官网上的这块是会有建议结果的···为什么我这是这个样子····</response>

解决方案

解决方案二:
第一次接触solr·····急求大神帮助,后面还有后续···配置了suggest,但是没有结果····
解决方案三:
加点分,求别沉,···困扰两天了··
解决方案四:
你好我也遇到这个问题了,你解决没
解决方案五:
引用3楼jiandie123的回复:

你好我也遇到这个问题了,你解决没

这个应该是<strname="spellcheck.dictionary">default</str>dictionary设置的问题就是前面对应的这个<lstname="spellchecker"><strname="name">default</str><strname="field">text</str>...</lst>这个是用solr中的text内容作为词典来做拼写检查的,具体我还没搞清楚用下面的文件dictionary比较容易一点把这个spellchecker(就是requestHandler中的spellcheck.dictionary)的注释去掉,sourceLocation的spellings.txt在你的solrhome的conf文件夹下,跟solrConfig.xml在一起,在其中添加词语作为词典,一行只写一个。比如iloveyou<lstname="spellchecker"><strname="name">file</str><strname="classname">solr.FileBasedSpellChecker</str><strname="sourceLocation">spellings.txt</str><strname="characterEncoding">UTF-8</str><strname="spellcheckIndexDir">spellcheckerFile</str></lst>把<strname="spellcheck.dictionary">default</str>改为<strname="spellcheck.dictionary">file</str>启动solr查询中指定spellcheck.dictionary=filespellcheck.build=true这个参数只在第一次查询时使用http://localhost:8080/solr/spell?q=ilovyou&spellcheck=true&spellcheck.collate=true&spellcheck.dictionary=file&spellcheck.build=true可以试下看看,这是直接用文件内容作为词典的默认的是使用solrtext字段的内容作为字典。详情参考solrwikiSpellCheckComponenthttp://wiki.apache.org/solr/SpellCheckComponent/

时间: 2024-10-26 22:59:17

新手请教solr spellcheck问题的相关文章

通讯录-新手请教大神们一个问题。

问题描述 新手请教大神们一个问题. 刚学习android,想做一个关于短信的小应用,我想在通讯录获得联系人,但是不是获得一个联系人,也不是全部的,就想调用那个短信群发的时候会跳转到的可以多选联系人界面上,如果是普通的通讯录我会调用: Intent intent = new Intent(Intent.ACTION_PICK ContactsContract.Contacts.CONTENT_URI); 但是调用那个多选联系人的通讯录界面我就不会了.百度也没找到有关的资料,所以请教一下各位大神!谢

c语言-C 新手请教下面的代码哪里错了?

问题描述 C 新手请教下面的代码哪里错了? e:cato3-1.cpp(1) : error C2628: 'SqStack' followed by 'void' is illegal (did you forget a ';'?) void InitStack(SqStack &S) { if(!(S.base=(SElemType )malloc(STACK_INIT_SIZE*sizeof(SElemType)))) exit(OVERFLOW); S.top=S.base; S.sta

新手请教一个c的问题,关于指针赋初始值

问题描述 新手请教一个c的问题,关于指针赋初始值 #includeint main(){ char *p=NULL; scanf(""%s""p); printf(""%s""p); return 0;}这段代码我在ios的终端下运行就提示Segmentation fault:11但是不给p赋初值的话..改称char *p;反而好使了..为什么...请教别人说是编译器的问题.能不能稍微详细的说一下为什么.. 解决方案 要先弄清

ajax-php全局变量修改问题(新手请教)

问题描述 php全局变量修改问题(新手请教) 用户登录后,将用户信息存放到php的全局变量global $user中, 编辑用户,修改用户的名字,点击保存,用户名成功保存到数据库中,但是页面中显示的用户名却没有变, 我想问下ajax回调函数如何能够修改php的超全局变量的值? 解决方案 分享一个jquery ajax 中不能修改全局变量问题的方法 解决方案二: 成功保存到数据库中你更新下变量值,下次刷新页面就会变 如果是ajax无刷提交的,用js更改页面用户名容器的innerHTML <span

新手请教个asp.net下的问题,为什么会出错?

问题描述 新手请教个asp.net下的问题,为什么会出错? 请问这个错误怎么解决啊? 解决方案 WH这个类缺少无参构造函数或者它是一个抽象类. 解决方案二: 没有用using导入相应的命名空间

tomcat 延时-新手请教,tomcat的延时设置

问题描述 新手请教,tomcat的延时设置 Windows系统中,用tomcat作为资源服务器,能否做到如下两点: 1.向tomcat发送http资源请求(http://ip:port/1.mp3之类的资源地址),tomcat能否延时一定时间(例如10s)然后再向客户端发送资源文件 2.能否限制单位时间内(1s)发送的资源大小.例如收到客户端请求(http://ip:port/1.mp3之类的资源地址)之后,每秒只向客户端发送1kb大小的文件数据流 以tomcat作为服务器能否做到如下两点?如果

java web-Java Web开发新手请教个问题(eclipse第三方jar的正确导入方式)

问题描述 Java Web开发新手请教个问题(eclipse第三方jar的正确导入方式) 比如我导入第三方jar包, 我在JSP页面用了这个包,eclipse编译倒是通过.但浏览器弹出来就显示XXX cannot be resolved to a type. 我是这样导入的:右击项目,Build Path-->Libraries-->Add External JARS,还有我把该jar包也放在项目中的WEB-INF的Lib文件下了,还是没用. 凡是用到第三方包,eclipse编译都通过,浏览器

java-Java新手请教各位谢谢了

问题描述 Java新手请教各位谢谢了 这段代码我想通过if的条件,讲datalist中某些数据存入showlist中,有没有可能报空指针异常?我已经改成从后面遍历的了 解决方案 Java新手日常练习Java新手必读新手如何学习java 解决方案二: 试试在循环外用 dataList.removeAll(showList); 解决方案三: 已经不会报异常了, 你可以用try catch 捕获起来 解决方案四: dataList.remove(i);这个i是ViList的角标,当Vilist中个数比

新手请教:vb08 编写登陆界面后与数据库连接,再提交留言 怎么在数据库中更新?

问题描述 小弟现在用vb08编写了一个登陆界面(form1)并且已经和数据库连在一起现在登陆后弹出留言界面(form2)在这个界面中留言提交后怎么在form2的代码中引用form1的用户名把用户名和留言内容一起更新到表中请问有几种实现方式???新手请教,谢谢各位大哥 解决方案 解决方案二:定义一个curUser公共变量解决方案三:该回复于2011-12-19 13:53:28被版主删除解决方案四:Form1中定義一個static類變量,於Form2中調用例:'Form1中:dimusername