fc013 发表于 2016-7-9 15:31:25

Solr特性总结


问题导读:
1.什么是Solr?2.Solr有哪些特性?
http://www.aboutyun.com/static/image/hrline/4.gif




Solr 是一种可供企业使用的、基于 Lucene 的搜索服务器,它支持层面搜索、命中醒目显示和多种输出格式。
一旦用户需要某种信息,就可以立即搜索到这些信息,这种要求再也不是可有可无的了。随着 Google 和类似的复杂搜索引擎的出现,用户希望得到高质量的搜索结果,帮助他们快速、轻易地找到所需的信息。
使用 Apache Solr可以满足所有的这些要求,它是一种开放源码的、基于 Lucene Java 的搜索服务器,易于加入到 Web 应用程序中。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括 XML/XSLT和 JSON 格式)。它易于安装和配置,而且附带了一个基于 HTTP 的管理界面。您可以坚持使用 Solr 的表现优异的基本搜索功能,也可以对它进行扩展从而满足企业的需要。
Solr 还拥有一个活跃的开发者群体,如有需要,您可以随时向他们寻求帮助。
Solr支持的特性如下:
Data Handling

使用模式或无模式,都很容易定义字段类型,分析流程和文档结构,从而帮助你的搜索应用程序成功。

[*]模式
Solr 同时支持无模式和模式。
无模式(数据驱动模式)能够方便的切换到使用配置模式的生产环境。

[*]字段类型
Solr可以很方便的定义混合类型字段,并且不需要编写代码就可以匹配lucene分析程序。

[*]动态字段
动态添加新的字段,并且根据字段名称自动映射字段类型。

[*]复制字段
支持对同一份内容使用不同的方法进行分析。

[*]过滤词汇
支持通过外部配置文件设置无用词列表,同义词列表和受限词列表。

[*]分析组件
支持多个文本分析组件,包括分词,正则表达式和遏制等。

[*]可扩展
支持应用程序方便的处理其专有格式和solr不支持的数据类型。
Querying


[*]REST接口
使用REST接口,支持与各种语言交互。

[*]字段排序
支持对任意个字段进行排序。

[*]查询函数
    提供了强大的基于数据相关性优化的功能。

[*]调优选项
提供相关性调优选项使应用程序优化结果以便符合其需要。

[*]查询解析
提供多个查询解析方法,使solr容易找到您需要的数据。

[*]查询处理方式配置
支持配置请求处理方式为服务端处理,简化应用程序处理。

[*]查询过滤器
支持应用设置多种查询过滤器。

[*]可插拔的查询解析器
支持应用提供自定义的查询解析器。

[*]游标
支持下一代NoSQL数据存储和分析特性—游标。

[*]准实时搜索
支持访问刚刚添加或者更新的文档。
Faceting

Solr 将以导航为目的的查询结果成为facet。它不会修改查询结果信息,只是在查询结果上根据分类添加了count信息,然后用户根据count信息做进一步的查询。
比如淘宝的查询列表中,上面会显示不同类目相关查询结果的数量。
比如搜索数码相机,在搜索结果栏会根据厂商、分辨率等维度列出。这里厂商、分辨率就是一个个facet。
在厂商下面会有nikon,canon,sony等品牌,这个叫约束(constraint)。
然后根据选择,列出当前的导航路径,这个叫面包屑(breadcrumb)。

[*]分层面
支持以多种方式分组和组织用户数据。

[*]性能优化
支持细粒度的控制,以便在CPU和内存资源间找到平衡。

[*]多条件查询
支持多条件查询,包括范围查询,日期查询等,以及多条件组合查询。
Discovery

集群、拼写检查、自动完成,更方便地帮助用户查找内容。

[*]输入联想
支持输入联想,方便用户更快的查找。

[*]Carrot2聚类工具
集成Carrot2聚类工具,支持动态搜索结果聚类。

[*]拼写检查
支持拼写检查,方便用户更准确的查找。

[*]高亮配置
支持高亮配置,是用户更聚焦查询结果。
Plugins and Extensions


[*]支持插件
支持插件功能,比如在语言检查、集群、数据导入等方面,应用都可以实现自己的插件。

[*]扩展接口
定义良好的扩展接口,比如建立索引、查询解析、请求处理等接口,方便应用编写自己的处理插件和是否使用该功能。
Statistics and Aggregations


[*]商业智能
支持复杂的数学分析以及基于搜索的下一代商业智能。
Spatials

位置感知搜索。
地理位置在空间搜索中至关重要!地理位置不仅在地产中至尊为王,将其用在搜索中还能帮助位于特定位置的用户快速找到有用的信息。例如,如果您是企业名录提供商(比如一个 “黄页” 站点),当用户需要找一位水管维修员时,该站点必须返回在用户住所附近的维修员。如果您运营的是一个旅游站点,那么您必须让旅游者能够搜索到他们所在的位置附近的名胜,从而帮助他们丰富旅游行程。如果您要构建一个社交网络站点,那么最好使用位置信息来帮助用户与朋友联系。位置感知设备(比如汽车导航系统和支持 GPS 的摄像机)和大量免费地图数据的普及为构建能够为终端用户搜索高级结果的 Geographical Information Systems (GIS) 提供了各种机会。

[*]开箱即用的支持位置感知搜索
使应用程序能够发现和基于位置的内容进行过滤。

[*]支持多种空间数据
广泛支持代表复杂空间数据,如:多边形,纬度/经度等。

[*]支持复杂查询功能
支持多种查询条件,如:多边形,纬度/经度等。

[*]集成Java 拓扑库
集成Java拓扑库,提供了先进的空间数据处理能力。
Rich Content


[*]集成Apache Tika
无需编写一行代码能够提取和处理丰富的内容类型。

[*]支持多种数据格式
处理各种数据类型,包括JSON、XML、办公文档、CSV等。

[*]灵活和可扩展的输入和输出格式
方便应用与Solr进行自定义格式的交互。

[*]高级处理选项
很容易控制提取内容索引和如何建立索引。
Performance

支持分页查询,limit关键字限制查询记录数。

[*]支持性能的调优
提供经过良好测试的性能,以及细粒度的调优参数。

[*]支持集群
支持单节点到多节点的分布式集群的一键式升级。

[*]支持智能缓存
多种智能缓存方式,严格控制重复的结果。

[*]支持lucence最新版本
总是建立在最新最好的Lucene上,利用Lucene性能增强而增强自身性能。

[*]支持编解码器
支持的编解码器,替代目录实现和提供先进的性能调优的选择。
Scaling with SolrCloud


[*]支持增加和删除节点
根据需要添加和删除计算能力,同时让Solr做负载平衡。

[*]支持碎片分裂
碎片分裂很容易逐步增加处理能力,不需要对已有内容重新建立索引。

[*]支持一致性
Solr基于zookeeper支持一致性和避免分裂问题。

[*]支持内置用户界面
内置的用户界面,提供集群运行状态。

[*]支持数据安全
先进的事务日志,复制和故障转移功能帮助减少数据丢失。

[*]支持定期大规模测试
大规模定期测试,处理成千上万的计算节点和数十亿的文档的查询量。
User Interface


[*]支持监控报表
广泛的报告和控制接口可以很容易理解和改变Solr的运行状态,包括性能数据。

[*]支持查看线程,日志和系统属性


[*]支持调试,包括查询接口和高级分析接口。





a_zhen 发表于 2016-7-10 10:22:50

没有细入研究,什么都很专业的

xw2016 发表于 2016-7-10 11:27:46

看一下
页: [1]
查看完整版本: Solr特性总结