- 浏览: 354975 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (176)
- Lucene (7)
- Solr (16)
- Hadoop/hbase (10)
- Nutch (2)
- 收藏链接 (7)
- javascript-xml-ajax (6)
- clasification (1)
- java base (22)
- TokenAnalyse (1)
- regEX (2)
- 持久化 (6)
- Linux (25)
- C/C++ (9)
- httpclient (5)
- TOMCAT (4)
- ECLIPSE (2)
- Parser_html (15)
- Database (2)
- struts2-spring-hibernate (7)
- finance (1)
- SEO (1)
- PHP (12)
- win2003 (5)
- security (3)
最新评论
-
menghuannvxia:
您好,我通过java上传文件到hadoop速度特别慢,怎么回事 ...
hadoop hdfs 一些用法 -
ydsakyclguozi:
ydsakyclguozi 写道david.org 写道错了. ...
hadoop修改默认的心跳检测的时间 -
ydsakyclguozi:
david.org 写道错了. heartbeat.reche ...
hadoop修改默认的心跳检测的时间 -
mypotatolove:
我现在想做用HttpClient从微博中爬取微博动态,能不能跟 ...
httpclient 设置user-agent -
青春的、脚步:
再者请教:如果查询的字段没有在配置文件的字段中加 termVe ...
solr morelikethis功能
一、 醒目显示的查询参数1. q Solr 中用来搜索的查询。有关该语法的完整描述,请参阅 参考资料 中的 “Lucene QueryParser Syntax”。可以通过追加一个分号和已索引且未进行断词的字段(下面会进行解释)的名称来包含排序信息。默认的排序是 score desc,指按记分降序排序。 q=myField:Java AND otherField:developerWorks; date asc
此查询搜索指定的两个字段并根据一个日期字段对结果进行排序。
2. start 将初始偏移量指定到结果集中。可用于对结果进行分页。默认值为 0。 start=15
返回从第 15 个结果开始的结果。
3. rows 返回文档的最大数目。默认值为 10。 rows=25
4. fq 提供一个可选的筛选器查询。查询结果被限制为仅搜索筛选器查询返回的结果。筛选过的查询由 Solr 进行缓存。它们对提高复杂查询的速度非常有用。 任何可以用 q 参数传递的有效查询,排序信息除外。
5. hl 当 hl=true 时,在查询响应中醒目显示片段。默认为 false。参看醒目显示参数上的 Solr Wiki 部分可以查看更多选项 hl=true
6. fl 作为逗号分隔的列表指定文档结果中应返回的 Field 集。默认为 “*”,指所有的字段。“score” 指还应返回记分。 *,score
二、对性能因素进行索引1. useCompoundFile 通过将很多 Lucene 内部文件整合到单一一个文件来减少使用中的文件的数量。这可有助于减少 Solr 使用的文件句柄数目,代价是降低了性能。除非是应用程序用完了文件句柄,否则 false 的默认值应该就已经足够。
2. mergeFactor 决定低水平的 Lucene 段被合并的频率。较小的值(最小为 2)使用的内存较少但导致的索引时间也更慢。较大的值可使索引时间变快但会牺牲较多的内存。
3. maxBufferedDocs 在合并内存中文档和创建新段之前,定义所需索引的最小文档数。段 是用来存储索引信息的 Lucene 文件。较大的值可使索引时间变快但会牺牲较多的内存。
4.maxMergeDocs 控制可由 Solr 合并的 Document 的最大数。较小的值 (< 10,000) 最适合于具有大量更新的应用程序。
5. maxFieldLength 对于给定的 Document,控制可添加到 Field 的最大条目数,进而截断该文档。如果文档可能会很大,就需要增加这个数值。然而,若将这个值设置得过高会导致内存不足错误。
6. unlockOnStartup unlockOnStartup 告知 Solr 忽略在多线程环境中用来保护索引的锁定机制。在某些情况下,索引可能会由于不正确的关机或其他错误而一直处于锁定,这就妨碍了添加和更新。将其设置为 true 可以禁用启动锁定,进而允许进行添加和更新。
三、智能缓存
1. filterCache 通过存储一个匹配给定查询的文档 id 的无序集,过滤器让 Solr 能够有效提高查询的性能。缓存这些过滤器意味着对 Solr 的重复调用可以导致结果集的快速查找。更常见的场景是缓存一个过滤器,然后再发起后续的精炼查询,这种查询能使用过滤器来限制要搜索的文档数。 可以预热
2. queryResultCache 为查询、排序条件和所请求文档的数量缓存文档 id 的有序 集合。 可以 预热
3. documentCache 缓存 Lucene Document,使用内部 Lucene 文档 id(以便不与 Solr 惟一 id 相混淆)。由于 Lucene 的内部 Document id 可以因索引操作而更改,这种缓存不能自热。 不可以预热
Named caches 命名缓存是用户定义的缓存,可被 Solr 定制插件 所使用。 可以,如果实现了 org.apache.solr.search.CacheRegenerator 的话。
四、请求处理
若现有的功能不能满足业务需求,Solr 允许应用程序实现其自身的请求处理功能。比如,您可能想要支持您自己的查询语言或想要将 Solr 与您的用户配置文件相集成来提供个性化的效果。SolrRequestHandler 接口定义了实现定制请求处理所需的方法。实际上,除了所使用的那些默认的 “标准” 请求处理程序之外,Solr 还定义了其他几个请求处理程序:
1. 默认的 StandardRequestHandler 使用 Lucene Query Parser 语法处理查询,添加了排序和层面浏览。
2. DisMaxRequestHandler 被设计用来通过更为简单的语法来跨多个 Field 进行搜索。它也支持排序(使用与标准处理程序稍有不同的语法)和层面浏览。
3. IndexInfoRequestHandler 可以检索有关索引的信息,比如索引中的文档数或 Field 数。
4. 请求处理程序是由请求中的 qt 参数指定的。Solr servlet 使用参数值来查找给定的请求处理程序并将输入用于请求处理程序的处理。请求处理程序的声明和命名通过 solrconfig.xml 中的 <requestHandler> 标记指定。要添加其他的内容,只需实现定制的 SolrRequestHandler 线程安全的实例即可,将其添加到 上述 定义好的 Solr,并将其包括到 如前所述 的类路径中,之后就可以通过 HTTP GET 或 POST 方法开始向其发送请求了。
五、响应处理
与请求处理类似,也可以定制响应输出。必须要支持老式的搜索输出或必须要使用二进制或加密输出格式的应用程序可以通过实现 QueryResponseWriter 来输出所需的格式。然而,在添加您自己的 QueryResponseWriter 之前,需要先深入研究一下 Solr 所自带的实现,如表 4 所示:
XMLResponseWriter 这个最为常用的响应格式以 XML 格式输出结果,如 第 1 部分 的博客应用程序所示。
XSLTResponseWriter XSLTResponseWriter 将 XMLResponseWriter 的输出转换成指定的 XSLT 格式。请求中的 tr 参数指定了要使用的 XSLT 转换的名称。指定的转换必须存在于 Solr Home 的 conf/xslt 目录。有关 XSLT Response Writer 的更多内容,请参见 参考资料。
JSONResponseWriter 用 JavaScript Object Notation (JSON) 格式输出结果。JSON 是一种简单、人类可读的数据转换格式,而且非常易于机器解析。
RubyResponseWriter RubyResponseWriter 是对 JSON 格式的扩展以便在 Ruby 中安全地使用结果。若有兴趣将 Ruby 和 Solr 结合使用,可以参考 参考资料 中给出的到 acts_as_solr 和 Flare 的链接。
PythonResponseWriter 对 JSON 输出格式的扩展以便在 Python eval 方法中安全地使用。
solr 1.3 更多扩展点
在 Solr 1.3 中,扩展 Solr 以及配置和重新整理扩展变得十分简单。以前,您需要编写一个 SolrRequestHandler 来实现新功能。这个方法的问题是其他 SolrRequestHandler 很难重用该功能。例如,您可能有更好的分类方法,但却想保留现有的查询与突出显示功能。为了解决这个问题,Solr 项目提出了将各种 SolrRequestHandler(比如 StandardRequestHandler 和 DismaxRequestHandler)重构为组件 — 称为 SearchComponent — 的想法,这些组件可以链接起来,形成一个新的 SolrRequestHandler。现在,您只要关注 SearchComponent 的新功能就可以了,不用再费神思考怎样才能最好地扩展、重用或复制其他功能。
不过请放心,现有的 SolrRequestHandler 仍然可以像以前一样无缝地工作,但它们现在仅仅是负责实际工作的围绕 SearchComponent 的包装器而已。表 1 介绍了一些新 SearchComponent 的详细信息。稍后,我还将在本文中提供有关表 1 中的两个组件的更多信息(MoreLikeThisComponent 和 SpellCheckComponent。参见 参考资料 中的 SearchComponent 链接)。
表 1. 常用的 SearchComponent
名称 说明和查询样例
QueryComponent 负责将查询提交到 Lucene 并返回 Document 的列表。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10
FacetComponent 决定结果集的分类。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10&facet=true&facet.field=inStock
MoreLikeThisComponent 为每个搜索结果查找与结果类似的文档,并返回这些结果。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10&mlt=true&mlt.fl=features&mlt.count=1
HighlightComponent 在搜索结果的正文中突出显示查询词语的位置。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10&hl=true&hl.fl=name
DebugComponent 返回有关查询的解析方式的信息,以及每个文档的记录方式的详细信息。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10&debugQuery=true
SpellCheckComponent 根据索引的内容对输入查询进行拼写检查,并提供其他备选方法。
http://localhost:8983/solr/spellCheckCompRH?&q=iPood&start=0&rows=10&spellcheck=true&spellcheck.build=true
查找相似页面
MoreLikeThisComponent 和 Solr 模式
MLT 要求字段被储存或使用检索词向量,检索词向量以一种以文档为中心的方式储存信息。MLT 通过文档的内容来计算文档中关键词语,然后使用原始查询词语和这些新词语创建一个新的查询。提交新查询就会返回其他查询结果。所有这些都可以用检索词向量来完成:只需将 termVectors="true" 添加到 schema.xml 中的 <field> 声明。
在 Google 上尝试一个查询,您会注意到每一个结果都包含一个 “相似页面” 链接,单击该链接,就会发布另一个搜索请求,查找出与起初结果类似的文档。Solr 使用 MoreLikeThisComponent(MLT)和 MoreLikeThisHandler 实现了一样的功能。如上所述,MLT 是与标准 SolrRequestHandler 集成在一起的;MoreLikeThisHandler 与 MLT 结合在一起,并添加了一些其他选项,但它要求发布一个单一的请求。我将着重讲述 MLT,因为使用它的可能性更大一些。幸运的是,不需要任何设置就可以查询它,所以您现在就可以开始查询。
您可以向请求添加很多 HTTP 查询参数,并且大部分参数都有智能的默认值,因此我将着重讲述使用 MLT 必须了解的参数。(要了解更多的详细信息,请参见 参考资料 获得 Solr wiki 的 MLT 页面链接)。
表 2. MoreLikeThisComponent 参数
参数 说明 值域
mlt 在查询时,打开/关闭 MoreLikeThisComponent 的布尔值。 真|假
mlt.count 可选。每一个结果要检索的相似文档数。 > 0
mlt.fl 用于创建 MLT 查询的字段。 模式中任何被储存的或含有检索词向量的字段。
mlt.maxqt 可选。查询词语的最大数量。由于长文档可能会有很多关键词语,这样 MLT 查询可能会很大,从而导致反应缓慢或可怕的 TooManyClausesException,该参数只保留最关键的词语。 > 0
尝试下面的样例查询,然后检查返回结果中的 moreLikeThis 部分:
http://localhost:8983/solr/rss/select/?q=*%3A*&start=0&rows=10&mlt=true
&mlt.fl=description&mlt.count=3
[Solr的检索运算符] “:” 指定字段查指定值,如返回所有值*:*
“?” 表示单个任意字符的通配
“*” 表示多个任意字符的通配(不能在检索的项开始使用*或者?符号)
“~” 表示模糊检索,如检索拼写类似于”roam”的项这样写:roam~将找到形如foam和roams的单词;roam~0.8,检索返回相似度在0.8以上的记录。
邻近检索,如检索相隔10个单词的”apache”和”jakarta”,”jakarta apache”~10
“^” 控制相关度检索,如检索jakarta apache,同时希望去让”jakarta”的相关度更加好,那么在其后加上”^”符号和增量值,即jakarta^4 apache
布尔操作符AND、||
布尔操作符OR、&&
布尔操作符NOT、!、- (排除操作符不能单独与项使用构成查询)
“+” 存在操作符,要求符号”+”后的项必须在文档相应的域中存在
( ) 用于构成子查询
[] 包含范围检索,如检索某时间段记录,包含头尾,date:[200707 TO 200710]
{} 不包含范围检索,如检索某时间段记录,不包含头尾
date:{200707 TO 200710}
\ 转义操作符,特殊字符包括+ - && || ! ( ) { } [ ] ^ ” ~ * ? : \
此查询搜索指定的两个字段并根据一个日期字段对结果进行排序。
2. start 将初始偏移量指定到结果集中。可用于对结果进行分页。默认值为 0。 start=15
返回从第 15 个结果开始的结果。
3. rows 返回文档的最大数目。默认值为 10。 rows=25
4. fq 提供一个可选的筛选器查询。查询结果被限制为仅搜索筛选器查询返回的结果。筛选过的查询由 Solr 进行缓存。它们对提高复杂查询的速度非常有用。 任何可以用 q 参数传递的有效查询,排序信息除外。
5. hl 当 hl=true 时,在查询响应中醒目显示片段。默认为 false。参看醒目显示参数上的 Solr Wiki 部分可以查看更多选项 hl=true
6. fl 作为逗号分隔的列表指定文档结果中应返回的 Field 集。默认为 “*”,指所有的字段。“score” 指还应返回记分。 *,score
二、对性能因素进行索引1. useCompoundFile 通过将很多 Lucene 内部文件整合到单一一个文件来减少使用中的文件的数量。这可有助于减少 Solr 使用的文件句柄数目,代价是降低了性能。除非是应用程序用完了文件句柄,否则 false 的默认值应该就已经足够。
2. mergeFactor 决定低水平的 Lucene 段被合并的频率。较小的值(最小为 2)使用的内存较少但导致的索引时间也更慢。较大的值可使索引时间变快但会牺牲较多的内存。
3. maxBufferedDocs 在合并内存中文档和创建新段之前,定义所需索引的最小文档数。段 是用来存储索引信息的 Lucene 文件。较大的值可使索引时间变快但会牺牲较多的内存。
4.maxMergeDocs 控制可由 Solr 合并的 Document 的最大数。较小的值 (< 10,000) 最适合于具有大量更新的应用程序。
5. maxFieldLength 对于给定的 Document,控制可添加到 Field 的最大条目数,进而截断该文档。如果文档可能会很大,就需要增加这个数值。然而,若将这个值设置得过高会导致内存不足错误。
6. unlockOnStartup unlockOnStartup 告知 Solr 忽略在多线程环境中用来保护索引的锁定机制。在某些情况下,索引可能会由于不正确的关机或其他错误而一直处于锁定,这就妨碍了添加和更新。将其设置为 true 可以禁用启动锁定,进而允许进行添加和更新。
三、智能缓存
1. filterCache 通过存储一个匹配给定查询的文档 id 的无序集,过滤器让 Solr 能够有效提高查询的性能。缓存这些过滤器意味着对 Solr 的重复调用可以导致结果集的快速查找。更常见的场景是缓存一个过滤器,然后再发起后续的精炼查询,这种查询能使用过滤器来限制要搜索的文档数。 可以预热
2. queryResultCache 为查询、排序条件和所请求文档的数量缓存文档 id 的有序 集合。 可以 预热
3. documentCache 缓存 Lucene Document,使用内部 Lucene 文档 id(以便不与 Solr 惟一 id 相混淆)。由于 Lucene 的内部 Document id 可以因索引操作而更改,这种缓存不能自热。 不可以预热
Named caches 命名缓存是用户定义的缓存,可被 Solr 定制插件 所使用。 可以,如果实现了 org.apache.solr.search.CacheRegenerator 的话。
四、请求处理
若现有的功能不能满足业务需求,Solr 允许应用程序实现其自身的请求处理功能。比如,您可能想要支持您自己的查询语言或想要将 Solr 与您的用户配置文件相集成来提供个性化的效果。SolrRequestHandler 接口定义了实现定制请求处理所需的方法。实际上,除了所使用的那些默认的 “标准” 请求处理程序之外,Solr 还定义了其他几个请求处理程序:
1. 默认的 StandardRequestHandler 使用 Lucene Query Parser 语法处理查询,添加了排序和层面浏览。
2. DisMaxRequestHandler 被设计用来通过更为简单的语法来跨多个 Field 进行搜索。它也支持排序(使用与标准处理程序稍有不同的语法)和层面浏览。
3. IndexInfoRequestHandler 可以检索有关索引的信息,比如索引中的文档数或 Field 数。
4. 请求处理程序是由请求中的 qt 参数指定的。Solr servlet 使用参数值来查找给定的请求处理程序并将输入用于请求处理程序的处理。请求处理程序的声明和命名通过 solrconfig.xml 中的 <requestHandler> 标记指定。要添加其他的内容,只需实现定制的 SolrRequestHandler 线程安全的实例即可,将其添加到 上述 定义好的 Solr,并将其包括到 如前所述 的类路径中,之后就可以通过 HTTP GET 或 POST 方法开始向其发送请求了。
五、响应处理
与请求处理类似,也可以定制响应输出。必须要支持老式的搜索输出或必须要使用二进制或加密输出格式的应用程序可以通过实现 QueryResponseWriter 来输出所需的格式。然而,在添加您自己的 QueryResponseWriter 之前,需要先深入研究一下 Solr 所自带的实现,如表 4 所示:
XMLResponseWriter 这个最为常用的响应格式以 XML 格式输出结果,如 第 1 部分 的博客应用程序所示。
XSLTResponseWriter XSLTResponseWriter 将 XMLResponseWriter 的输出转换成指定的 XSLT 格式。请求中的 tr 参数指定了要使用的 XSLT 转换的名称。指定的转换必须存在于 Solr Home 的 conf/xslt 目录。有关 XSLT Response Writer 的更多内容,请参见 参考资料。
JSONResponseWriter 用 JavaScript Object Notation (JSON) 格式输出结果。JSON 是一种简单、人类可读的数据转换格式,而且非常易于机器解析。
RubyResponseWriter RubyResponseWriter 是对 JSON 格式的扩展以便在 Ruby 中安全地使用结果。若有兴趣将 Ruby 和 Solr 结合使用,可以参考 参考资料 中给出的到 acts_as_solr 和 Flare 的链接。
PythonResponseWriter 对 JSON 输出格式的扩展以便在 Python eval 方法中安全地使用。
solr 1.3 更多扩展点
在 Solr 1.3 中,扩展 Solr 以及配置和重新整理扩展变得十分简单。以前,您需要编写一个 SolrRequestHandler 来实现新功能。这个方法的问题是其他 SolrRequestHandler 很难重用该功能。例如,您可能有更好的分类方法,但却想保留现有的查询与突出显示功能。为了解决这个问题,Solr 项目提出了将各种 SolrRequestHandler(比如 StandardRequestHandler 和 DismaxRequestHandler)重构为组件 — 称为 SearchComponent — 的想法,这些组件可以链接起来,形成一个新的 SolrRequestHandler。现在,您只要关注 SearchComponent 的新功能就可以了,不用再费神思考怎样才能最好地扩展、重用或复制其他功能。
不过请放心,现有的 SolrRequestHandler 仍然可以像以前一样无缝地工作,但它们现在仅仅是负责实际工作的围绕 SearchComponent 的包装器而已。表 1 介绍了一些新 SearchComponent 的详细信息。稍后,我还将在本文中提供有关表 1 中的两个组件的更多信息(MoreLikeThisComponent 和 SpellCheckComponent。参见 参考资料 中的 SearchComponent 链接)。
表 1. 常用的 SearchComponent
名称 说明和查询样例
QueryComponent 负责将查询提交到 Lucene 并返回 Document 的列表。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10
FacetComponent 决定结果集的分类。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10&facet=true&facet.field=inStock
MoreLikeThisComponent 为每个搜索结果查找与结果类似的文档,并返回这些结果。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10&mlt=true&mlt.fl=features&mlt.count=1
HighlightComponent 在搜索结果的正文中突出显示查询词语的位置。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10&hl=true&hl.fl=name
DebugComponent 返回有关查询的解析方式的信息,以及每个文档的记录方式的详细信息。
http://localhost:8983/solr/select?&q=iPod&start=0&rows=10&debugQuery=true
SpellCheckComponent 根据索引的内容对输入查询进行拼写检查,并提供其他备选方法。
http://localhost:8983/solr/spellCheckCompRH?&q=iPood&start=0&rows=10&spellcheck=true&spellcheck.build=true
查找相似页面
MoreLikeThisComponent 和 Solr 模式
MLT 要求字段被储存或使用检索词向量,检索词向量以一种以文档为中心的方式储存信息。MLT 通过文档的内容来计算文档中关键词语,然后使用原始查询词语和这些新词语创建一个新的查询。提交新查询就会返回其他查询结果。所有这些都可以用检索词向量来完成:只需将 termVectors="true" 添加到 schema.xml 中的 <field> 声明。
在 Google 上尝试一个查询,您会注意到每一个结果都包含一个 “相似页面” 链接,单击该链接,就会发布另一个搜索请求,查找出与起初结果类似的文档。Solr 使用 MoreLikeThisComponent(MLT)和 MoreLikeThisHandler 实现了一样的功能。如上所述,MLT 是与标准 SolrRequestHandler 集成在一起的;MoreLikeThisHandler 与 MLT 结合在一起,并添加了一些其他选项,但它要求发布一个单一的请求。我将着重讲述 MLT,因为使用它的可能性更大一些。幸运的是,不需要任何设置就可以查询它,所以您现在就可以开始查询。
您可以向请求添加很多 HTTP 查询参数,并且大部分参数都有智能的默认值,因此我将着重讲述使用 MLT 必须了解的参数。(要了解更多的详细信息,请参见 参考资料 获得 Solr wiki 的 MLT 页面链接)。
表 2. MoreLikeThisComponent 参数
参数 说明 值域
mlt 在查询时,打开/关闭 MoreLikeThisComponent 的布尔值。 真|假
mlt.count 可选。每一个结果要检索的相似文档数。 > 0
mlt.fl 用于创建 MLT 查询的字段。 模式中任何被储存的或含有检索词向量的字段。
mlt.maxqt 可选。查询词语的最大数量。由于长文档可能会有很多关键词语,这样 MLT 查询可能会很大,从而导致反应缓慢或可怕的 TooManyClausesException,该参数只保留最关键的词语。 > 0
尝试下面的样例查询,然后检查返回结果中的 moreLikeThis 部分:
http://localhost:8983/solr/rss/select/?q=*%3A*&start=0&rows=10&mlt=true
&mlt.fl=description&mlt.count=3
[Solr的检索运算符] “:” 指定字段查指定值,如返回所有值*:*
“?” 表示单个任意字符的通配
“*” 表示多个任意字符的通配(不能在检索的项开始使用*或者?符号)
“~” 表示模糊检索,如检索拼写类似于”roam”的项这样写:roam~将找到形如foam和roams的单词;roam~0.8,检索返回相似度在0.8以上的记录。
邻近检索,如检索相隔10个单词的”apache”和”jakarta”,”jakarta apache”~10
“^” 控制相关度检索,如检索jakarta apache,同时希望去让”jakarta”的相关度更加好,那么在其后加上”^”符号和增量值,即jakarta^4 apache
布尔操作符AND、||
布尔操作符OR、&&
布尔操作符NOT、!、- (排除操作符不能单独与项使用构成查询)
“+” 存在操作符,要求符号”+”后的项必须在文档相应的域中存在
( ) 用于构成子查询
[] 包含范围检索,如检索某时间段记录,包含头尾,date:[200707 TO 200710]
{} 不包含范围检索,如检索某时间段记录,不包含头尾
date:{200707 TO 200710}
\ 转义操作符,特殊字符包括+ - && || ! ( ) { } [ ] ^ ” ~ * ? : \
发表评论
-
solr morelikethis功能
2009-09-28 14:00 5076在 Google 上尝试一个查询,您会注意到每一个结果 ... -
solr 排序
2009-09-16 15:52 1647//在QParser类里面的getSort()方法 ... -
solr curl
2009-09-10 14:54 1890//Let's say we have an XML fi ... -
solr 查询参数说明
2009-08-31 14:14 2248solr 查询参数说明备忘 常用 q - 查询字符串,必须 ... -
solrJ查询使用方法
2009-08-19 16:40 4464public class SolrJSearch { ... -
Solr的检索运算符
2009-08-19 14:16 2095[Solr的检索运算符 ] 1. “:” 指定字段查指定值,如 ... -
solr的复制功能
2009-08-19 11:59 1455参考朋友chenlb的文章:http://www.iteye. ... -
solr源码类里的一些方法
2009-08-16 22:56 2046//SolrIndexSearcher.java ... -
solr的distribution搜索
2009-07-29 14:39 12111.安装2个solr,2份tomcat,端口一个为8080,一 ... -
solr更换memcached缓存的方法
2009-07-28 18:00 20161、补丁文件2个,src/java/org/apache/so ... -
Solr调优
2009-03-18 08:50 2112Solr调优 Schema设计的思考 索引字段的数量 ... -
solr的一些查询语法
2009-03-02 13:29 2191Solr 及 lucene 的 query 使用方法初級解說 ... -
solr1.3 multicore + tomcat5.5 + paoding分词安装
2009-02-21 10:51 1872一.安装jdk6,tomcat5.5。 二.解压solr1.3 ... -
solr1.3+linux+tomcat的安装
2008-12-05 15:21 18591.安装jdk,tomcat,具体安装方法不再本文讨论 ... -
完整的solr的增加索引的xml的格式
2008-12-05 14:12 2011一个完整的solr的增加索引的xml的格式: <ad ...
相关推荐
### Solr概念与关键技术知识点详解 #### 一、Solr简介 - **Solr** 是一个高度可伸缩的企业级搜索引擎平台,支持多种语言,并且提供了丰富的API接口,包括REST风格的HTTP/XML和JSON API。它能够高效地处理大规模数据...
在Solr中,主要涉及以下几个核心概念: 1. **索引**:索引是Solr处理数据的基础,它是对文档进行预处理后的结果,用于快速查询。Solr使用倒排索引技术,将文档中的每个词映射到包含该词的文档列表,大大提高了搜索...
通过上述内容,我们不仅了解了 Solr 的基本概念、Solr 与 Lucene 的区别,还学习了如何安装和配置 Solr,以及如何使用 Solr 进行索引的创建和搜索。Solr 作为一款企业级的搜索引擎,凭借其强大的功能和灵活性,在...
7. **Solr核心概念**: - **Collection/Core**:Solr中的数据集,对应于数据库中的表,每个Core有自己的schema和配置。 - **Document**:索引的基本单位,类似于数据库中的记录。 - **Field**:文档中的属性,...
首先,让我们了解Solr的基本概念。Solr的核心功能是提供高效的全文检索、命中高亮、拼写检查、分类、 faceting(分面导航)和更多其他高级功能。它基于Lucene库,提供了更易用的API和配置方式,使得开发者可以快速...
1. **Solr核心概念**:如集合(Collections)、索引、查询、请求处理器、过滤器等,这些都是构建搜索应用的基础。 2. **配置文件**:如`solrconfig.xml`和`schema.xml`,前者定义了Solr的行为,后者定义了字段类型...
首先,我们来了解一下Solr的核心概念。Solr索引是用于快速搜索的文档集合,这些文档经过分词和分析,便于搜索。每个文档都有一个唯一的标识符(ID),并且可以包含多个字段,如标题、内容、作者等。Solr通过建立倒排...
Solr 4.10.3是一个稳定版本,它包含了之前版本的所有修复和改进,并可能引入了一些新的功能。在深入探讨这个版本之前,让我们先理解一下Solr的基本架构和工作原理。 1. **SolrCloud**:从4.0版本开始,Solr引入了...
在理解这个知识点之前,我们需要先了解Solr的基本概念以及数据导入处理(DataImportHandler,DIH)。 Apache Solr是一个开源的全文搜索引擎,它提供了高效、可扩展的搜索和分析功能。Solr能够对大量数据进行快速的...
在本文中,我们将深入探讨Solr的核心概念、关键特性以及如何使用Solr进行搜索。 一、Solr核心概念 1. 索引:Solr中的索引类似于数据库的索引,用于快速查找文档。它通过分词和建立倒排索引来实现高效的文本搜索。 2...
在本套课件中,我们将深入探讨Solr的核心概念、安装配置以及Ik分词器的使用。 首先,让我们从"solr.docx"开始。这可能是一个包含Solr基础教程的文档,涵盖了Solr的基本概念,如索引、查询、优化和集群配置。Solr的...
这些是Solr在实际应用中涉及的重要概念: 1. **同义词**:在Solr中,可以使用Solr的同义词扩展来处理词汇的同义关系。例如,"车"和"汽车"可以视为同义词,当用户搜索"车"时,也能匹配到包含"汽车"的文档。这通过...
首先,我们来了解一下Solr的核心概念和主要特点: 1. **核心概念**: - **索引**:Solr通过建立倒排索引来加速查询,其中包含了文档ID和关键词之间的映射关系。 - **文档**:在Solr中,文档是信息的基本单元,...
1. **Solr核心概念** - **索引**:Solr通过建立倒排索引来加速文本搜索,这是其高效查询的关键。 - **集合(Collections)与核心(Cores)**:集合是Solr中的逻辑数据分区,而核心是实际的数据存储和处理单元,每...
1. **Solr的基本概念**: - **Solr核心(Core)**:是Solr处理数据的基本单元,每个核心包含自己的配置、索引和日志文件。 - **索引(Index)**:Solr通过构建索引来提高搜索效率,索引存储了文档的关键信息,便于...
**SOLR应用教程** **一、概述** ...这个SOLR应用教程涵盖了从基础概念到实际应用,包括安装配置、索引和搜索操作、SolrJ的使用以及性能优化等多个方面,为读者提供了一个全面了解和掌握Solr的路径。
本文将基于"solr_开发入门例子"这一主题,详细解释Solr的基础知识,包括其核心概念、安装配置、索引创建与查询,以及相关的开发工具。 1. **Solr核心概念** - **索引**: Solr通过建立倒排索引来实现快速全文检索。...
压缩包可能提供了一些最佳实践或示例,帮助用户提升Solr的性能。 10. **监控与日志**:SolR提供了一套监控系统,可以通过Solr Admin界面查看索引状态、查询性能等信息。日志文件对排查问题和分析系统行为非常有帮助...
### Solr教材知识点详解 ...以上是关于《solr教材-PDF版》的详细知识点介绍,涵盖了从Solr的基本概念到具体应用场景,再到性能调优等多个方面,旨在帮助读者全面了解和掌握Solr的核心技术和最佳实践。