solr in action翻译-第二章了解Solr2.2
转载请声明出处,谢谢。翻译也很辛苦
solr学习交流扣扣群340954928
2.1.4。索引文件的例子
当你第一次开始Solr, 文档中没有索引的。这是一个空的服务器等待充满搜索数据。我们在第5章详细介绍索引。现在, 为了得到Solr索引我们将掩盖细节以便我们示例数据可以尝试一些查询。打开一个新的命令行界面,输入以下:
cd $SOLR_INSTALL/example/exampledocs
java -jar post.jar *.xml
应该会看到看起来像下面的输出:
SimplePostTool version 1.5
Posting files to base url http://localhost:8983/solr/update using content-
type application/xml..
POSTing file gb18030-example.xml
POSTing file hd.xml
POSTing file ipod_other.xml
POSTing file ipod_video.xml
POSTing file manufacturers.xml
POSTing file mem.xml
POSTing file money.xml
POSTing file monitor.xml
POSTing file monitor2.xml
POSTing file mp500.xml
POSTing file sd500.xml
POSTing file solr.xml
POSTing file utf8-example.xml
POSTing file vidcard.xml
14 files indexed.
COMMITting Solr index changes to http://localhost:8983/solr/update..
这个post.ar使用HTTP POST文件发送XML文档到Solr。在所有的Solr文档发送,这个post.jar提交应用程序,这使得示例在Solr文档可发现的。验证示例文档添加成功,去查询Solr的管理控制台页面
(http://localhost:8983 / solr)和执行查找所有文件查询(*:*)。你需要在左边的下拉框collections选择包括访问查询页面。图2.5显示了您应该看到执行查找所有文件后查询。
图2.5。Solr的查询的截图形式管理控制台。您可以验证正确的示例文件索引通过执行查询查找所有文件。
在这一点上,我们有加载运行一些Solr实例示例文档。
2.2。搜索是什么
现在是时候看到Solr发光。毫无疑问,Solr的主要力量是强大的查询处理。这样想想,谁在乎如何如果可伸缩或快速搜索引擎它返回结果不是有用的或准确?在本节中,您将看到Solr查询处理,我们认为这将帮助你明白为什么Solr是这样一个强大的搜索技术。
在本节中,密切关注我们每个查询执行之间的联系Solr返回的文档,尤其是文件的顺序结果。这将帮助你开始考虑像搜索引擎,这将在第三章讨论核心搜索概念派上用场。
2.2.1。探索Solr的查询表单
你已经使用Solr的查询形式执行查找所有文件。让我们快速浏览一下其他功能的这种形式所以你了解类型的查询Solr支持。图2.6提供了一些关键部分,这种形式的注释。看一分钟阅读每个注释的图。
图2.6。一个带注释的形式说明截图Solr的查询Solr查询处理的主要特性,如过滤器、结果的格式,
排序、分页和搜索组件
在图2.6中,我们制定一个查询,它返回我们2.1.4节添加两个示例文档。填写表格,在您自己的环境中执行查询。做两个文档,Solr返回有意义吗?表2.1提供了一个概述的形式我们使用这个示例字段。
表2.1。图2.6查询参数的概述
Form field | value | Description |
q | iPod | 主要查询参数;文档得分的在这个参数相似计算得到。 |
fq | manu:Belkin | 查询过滤器;限制结果集文档匹配,这个过滤器但不影响得分。在这个例子中,我们过滤结果,制造商马努等于贝尔金。 |
sort | price asc | 指定排序字段和排序顺序;在本例中,我们想要的结果按价格排序字段按升序(asc)文档,首先列出了最低价格。 |
start | 分页开始 | |
rows | 10 | 每页显示多少条 |
fl | name,price, features, score | 返回每个文档的结果集的字段列表。查询相关性得分。你必须请求得分字段为它显式地返回,完成的例子。 |
df | Text | 不指定任何查询条件默认搜索字段使用哪个字段搜索;示例服务器为空。 |
Wt | xml | Response-writer类型;控制响应的格式。 |
正如我们在第1章中讨论(1.2.3节),所有交互与Solr的核心服务,等查询处理,执行HTTP请求。当你填写查询表单,创建一个HTTP GET请求并送往Solr。表单字段的名称表2.1所示对应的参数传递给Solr的HTTP GET请求。清单2.1显示了HTTP GET请求发送到Solr当您执行查询如图2.6所示。请注意请求参数之间不包括换行符,这我们包含在这里,让它更容易看到单独的参数。
清单2.1。发送的HTTP GET请求查询的分解形式
寻找更多的查询例子吗?
我们在第七章覆盖查询更多的深度。但如果你不想等那么久希望看到更多的查询操作,我们建议看Solr提供的教程。打开SOLR_INSTALL / docs /教程。在您的web浏览器中打开html,你会发现额外的查询2.1.4节中的示例文档加载。
我们可能不需要告诉你,这种形式并不是为最终用户设计,Solr提供了查询表单,以便开发人员和管理员有办法发送查询无需手动制定HTTP请求或者开发一个客户端应用程序发送一个查询Solr。但我们要清楚,Solr-based应用程序,你负责开发UI。2.2.5节中我们将看到,Solr提供了可定制的示例搜索UI,称为Solritas,来帮助你自己了不起的原型搜索应用程序。
2.2.2。当你搜索从Solr回来什么
我们看到什么发送到Solr,所以现在让我们来了解回来的结果。本节重点是Solr返回文档匹配的查询,
附加信息,可以处理你的Solr客户交付质量搜索体验。最重要的词是由你的Solr端!Solr返回原始数据和功能,您需要创建一个质量为用户的搜索体验。
图2.7显示了回来2.2.1节中我们使用的示例查询。作为可以看到,结果是XML格式的,价格从低到高排序。每个文档包含术语的iPod。分页不进入结果集因为只有两个结果。
图2.7。Solr响应我们的示例请求的XML格式的清单2.1
到目前为止,我们只看到返回结果为XML,但Solr还支持其他格式CSV(逗号分隔值),JavaScript对象表示法(JSON)流行的语言的特定于语言的格式。例如,Solr可以返回特定于Python的格式,允许安全响应解析成一个Python对象树使用eval函数。