Apache Solr - 架构

在本章中,我们将讨论Apache Solr的体系结构.下图显示了Apache Solr的体系结构框图.

Architecture

Solr架构─构建模块

以下是Apache Solr的主要构建块(组件) :

  • 请求处理程序 : 我们发送给Apache Solr的请求由这些请求处理程序处理.请求可能是查询请求或索引更新请求.根据我们的要求,我们需要选择请求处理程序.要将请求传递给Solr,我们通常会将处理程序映射到某个URI端点,并且指定的请求将由它提供.

  • 搜索组件 : 搜索组件是Apache Solr中提供的搜索类型(特征).它可能是拼写检查,查询,分面,点击突出显示等.这些搜索组件被注册为搜索处理程序.可以将多个组件注册到搜索处理程序.

  • Query Parser :  Apache Solr查询解析器解析我们传递给Solr的查询,并验证查询是否存在语法错误.解析查询后,它会将它们转换为Lucene理解的格式.

  • Response Writer :  Apache Solr中的响应编写器是为用户查询生成格式化输出的组件. Solr支持XML,JSON,CSV等响应格式.对于每种类型的响应,我们都有不同的响应编写器.

  • Analyzer/tokenizer :  Lucene以令牌的形式识别数据. Apache Solr分析内容,将其划分为令牌,并将这些令牌传递给Lucene. Apache Solr中的分析器检查字段文本并生成令牌流.标记生成器将分析器准备的标记流分解为标记.

  • 更新请求处理器 : 每当我们向Apache Solr发送更新请求时,请求都通过一组插件(签名,日志记录,索引)运行,统称为更新请求处理器.此处理器负责修改,例如删除字段,添加字段等.