Solr的特性都在这儿了
Posted 中兴大数据
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Solr的特性都在这儿了相关的知识,希望对你有一定的参考价值。
这是 中兴大数据 第204篇原创文章
Solr 是一种可供企业使用的、基于 Lucene 的搜索服务器,它支持层面搜索、命中醒目显示和多种输出格式。
一旦用户需要某种信息,就可以立即搜索到这些信息,这种要求再也不是可有可无的了。随着 Google 和类似的复杂搜索引擎的出现,用户希望得到高质量的搜索结果,帮助他们快速、轻易地找到所需的信息。
使用 Apache Solr可以满足所有的这些要求,它是一种开放源码的、基于 Lucene Java 的搜索服务器,易于加入到 Web 应用程序中。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括 XML/XSLT和 JSON 格式)。它易于安装和配置,而且附带了一个基于 HTTP 的管理界面。您可以坚持使用 Solr 的表现优异的基本搜索功能,也可以对它进行扩展从而满足企业的需要。
Solr 还拥有一个活跃的开发者群体,如有需要,您可以随时向他们寻求帮助。
Solr支持的特性如下:
使用模式或无模式,都很容易定义字段类型,分析流程和文档结构,从而帮助你的搜索应用程序成功。
模式
Solr 同时支持无模式和模式。
无模式(数据驱动模式)能够方便的切换到使用配置模式的生产环境。
字段类型
Solr可以很方便的定义混合类型字段,并且不需要编写代码就可以匹配lucene分析程序。
动态字段
动态添加新的字段,并且根据字段名称自动映射字段类型。
复制字段
支持对同一份内容使用不同的方法进行分析。
过滤词汇
支持通过外部配置文件设置无用词列表,同义词列表和受限词列表。
分析组件
支持多个文本分析组件,包括分词,正则表达式和遏制等。
可扩展
支持应用程序方便的处理其专有格式和solr不支持的数据类型。
REST接口
使用REST接口,支持与各种语言交互。
字段排序
支持对任意个字段进行排序。
查询函数
提供了强大的基于数据相关性优化的功能。
调优选项
提供相关性调优选项使应用程序优化结果以便符合其需要。
查询解析
提供多个查询解析方法,使solr容易找到您需要的数据。
查询处理方式配置
支持配置请求处理方式为服务端处理,简化应用程序处理。
查询过滤器
支持应用设置多种查询过滤器。
可插拔的查询解析器
支持应用提供自定义的查询解析器。
游标
支持下一代NoSQL数据存储和分析特性—游标。
准实时搜索
支持访问刚刚添加或者更新的文档。
Solr 将以导航为目的的查询结果成为facet。它不会修改查询结果信息,只是在查询结果上根据分类添加了count信息,然后用户根据count信息做进一步的查询。
比如淘宝的查询列表中,上面会显示不同类目相关查询结果的数量。
比如搜索数码相机,在搜索结果栏会根据厂商、分辨率等维度列出。这里厂商、分辨率就是一个个facet。
在厂商下面会有nikon,canon,sony等品牌,这个叫约束(constraint)。
然后根据选择,列出当前的导航路径,这个叫面包屑(breadcrumb)。
分层面
支持以多种方式分组和组织用户数据。
性能优化
支持细粒度的控制,以便在CPU和内存资源间找到平衡。
多条件查询
支持多条件查询,包括范围查询,日期查询等,以及多条件组合查询。
集群、拼写检查、自动完成,更方便地帮助用户查找内容。
输入联想
支持输入联想,方便用户更快的查找。
Carrot2聚类工具
集成Carrot2聚类工具,支持动态搜索结果聚类。
拼写检查
支持拼写检查,方便用户更准确的查找。
高亮配置
支持高亮配置,是用户更聚焦查询结果。
支持插件
支持插件功能,比如在语言检查、集群、数据导入等方面,应用都可以实现自己的插件。
扩展接口
定义良好的扩展接口,比如建立索引、查询解析、请求处理等接口,方便应用编写自己的处理插件和是否使用该功能。
商业智能
支持复杂的数学分析以及基于搜索的下一代商业智能。
位置感知搜索。
地理位置在空间搜索中至关重要!地理位置不仅在地产中至尊为王,将其用在搜索中还能帮助位于特定位置的用户快速找到有用的信息。例如,如果您是企业名录提供商(比如一个 “黄页” 站点),当用户需要找一位水管维修员时,该站点必须返回在用户住所附近的维修员。如果您运营的是一个旅游站点,那么您必须让旅游者能够搜索到他们所在的位置附近的名胜,从而帮助他们丰富旅游行程。如果您要构建一个社交网络站点,那么最好使用位置信息来帮助用户与朋友联系。位置感知设备(比如汽车导航系统和支持 GPS 的摄像机)和大量免费地图数据的普及为构建能够为终端用户搜索高级结果的 Geographical Information Systems (GIS) 提供了各种机会。
开箱即用的支持位置感知搜索
使应用程序能够发现和基于位置的内容进行过滤。
支持多种空间数据
广泛支持代表复杂空间数据,如:多边形,纬度/经度等。
支持复杂查询功能
支持多种查询条件,如:多边形,纬度/经度等。
集成Java 拓扑库
集成Java拓扑库,提供了先进的空间数据处理能力。
集成Apache Tika
无需编写一行代码能够提取和处理丰富的内容类型。
支持多种数据格式
处理各种数据类型,包括JSON、XML、办公文档、CSV等。
灵活和可扩展的输入和输出格式
方便应用与Solr进行自定义格式的交互。
高级处理选项
很容易控制提取内容索引和如何建立索引。
支持分页查询,limit关键字限制查询记录数。
支持性能的调优
提供经过良好测试的性能,以及细粒度的调优参数。
支持集群
支持单节点到多节点的分布式集群的一键式升级。
支持智能缓存
多种智能缓存方式,严格控制重复的结果。
支持lucence最新版本
总是建立在最新最好的Lucene上,利用Lucene性能增强而增强自身性能。
支持编解码器
支持的编解码器,替代目录实现和提供先进的性能调优的选择。
支持增加和删除节点
根据需要添加和删除计算能力,同时让Solr做负载平衡。
支持碎片分裂
碎片分裂很容易逐步增加处理能力,不需要对已有内容重新建立索引。
支持一致性
Solr基于zookeeper支持一致性和避免分裂问题。
支持内置用户界面
内置的用户界面,提供集群运行状态。
支持数据安全
先进的事务日志,复制和故障转移功能帮助减少数据丢失。
支持定期大规模测试
大规模定期测试,处理成千上万的计算节点和数十亿的文档的查询量。
支持监控报表
广泛的报告和控制接口可以很容易理解和改变Solr的运行状态,包括性能数据。
支持查看线程,日志和系统属性
支持调试,包括查询接口和高级分析接口。
以上是关于Solr的特性都在这儿了的主要内容,如果未能解决你的问题,请参考以下文章
Java新特性Lambda表达式典型案例,你想要的的都在这儿了!!