Solr是基于Apache Lucene构建的搜索服务器,Apache Lucene是基于Java的开源信息检索库。它旨在驱动功能强大的文档检索应用程序-无论您需要根据用户的查询向其提供数据的任何地方,Solr都能为您服务。
这是Solr如何与应用程序集成的示例:
图1. Solr与应用程序的集成
在上述情况下,Solr与其他服务器应用程序一起运行。例如,在线商店应用程序将提供用户界面,购物车以及为最终用户进行购买的方式。而库存管理应用程序将允许商店员工编辑产品信息。产品元数据将保存在某种数据库以及Solr中。
Solr通过以下步骤使添加在线商店搜索功能变得容易:
因为Solr基于开放标准,所以它具有高度的可扩展性。Solr查询是简单的HTTP请求URL,响应是结构化的文档:主要是JSON,但也可以是XML,CSV或其他格式。
Solr的模式是一个单独的文件(以XML格式),用于存储有关Solr希望理解的字段和字段类型的详细信息。该模式不仅定义字段或字段类型的名称,还定义了对字段建立索引之前应进行的任何修改。例如,如果您要确保输入“ abc”的用户和输入“ ABC”的用户都可以找到包含术语“ ABC”的文档,则需要进行标准化(在这种情况下为小写) )为索引建立“ ABC”,并规范化用户查询以确保匹配。这些规则在您的模式中定义。
我们提到了复制字段,它是由源自其他字段的数据组成的字段。您还可以定义动态字段,该字段使用通配符(例如*_t
或*_s
)动态创建特定字段类型的字段。这些类型的规则也在模式中定义。
原文:https://www.cnblogs.com/dgwblog/p/12364470.html