首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Solr-选择您的开源搜索引擎

我存在的目的是什么?我应该运动还是休息并节省能量?早起上班或晚起并整夜工作?我应该将炸薯条和番茄酱或蛋黄酱一起吃吗? 这些都是古老的问题,可能有也可能没有答案。其中一些是非常困难或非常主观的。...但是,让我付出一些努力来尝试回答其中之一:我应该使用Elasticsearch还是Solr? 这是场景。...但在下面,它们都使用Lucene,这意味着两者都建立在“巨人的肩膀”上。 对于那些想知道为什么我将Lucene视为“巨人”的人来说,它是许多搜索引擎支持下的实际信息检索软件库。...Java API和REST Elasticsearch具有更多的“ Web 2.0” REST API,但是Solr的SolrJ确实有更好的Java API-如果使用Microsoft技术,则为SolrNet...Solr的REST API可能没有那么灵活,但是它可以很好地满足您的需求:建立索引和查询。Elasticsearch会说JSON,因此,如果您周围都使用JSON,那么这是一个不错的选择。

1K30

【搜索引擎选型】Solr vs. Elasticsearch:怎么选?

Solr和Elasticsearch是搜索库之上的组件,为完整的搜索产品提供了自己的实现和功能。...Solr vs. Elasticsearch:哪个对我的组织更好? 这得看情况。 关于采用一种技术而不是另一种技术有许多用例。...但是当被问到这个问题时,我通常会从运营管理的角度来类比地回答:“ Solr就像Linux。...这并不是说Hadoop平台无法与Elasticsearch配合使用(我们已向客户提出了此方案),但是某些平台(尤其是Cloudera和Hortonworks)提供了额外的工具和方法来对生态系统内的数据建立索引和管理...Solr中特定功能的总体重要性可能超过Elasticsearch中的运营优势,例如: 在一个客户端的情况下,与Solr部署相关联的开销以及必须使用SolrNET的过期客户端(当时)的开销被Solr的可插入性所抵消

1K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    干货 | 如何用Solr搭建大数据查询平台

    进入解压缩后的solr文件夹的bin目录,solr.cmd和solr分别是windows和linux下的启动脚本: 因为社工库是海量大数据,而jvm默认只使用512m的内存,这远远不够,所以我们需要修改...中文分词引擎来查询中文。...,而社工库必须精确查询,所以汉字查询必须给关键字加双引号。...,然后和后台程序一锅乱炖,坦白说,在下并不喜欢这样的架构,对于大数据应用来说,各个功能组件各自独立,互相配合远比大杂烩要有效率和易于维护的多,所以,我理想中的社工库查询服务器,应该是以下的架构: 以上架构中...并且,solr并不依赖于mysql,它本身就是数据库可以独立运行,而社工库这种东西,并不是经常有新数据的,获取新数据的间隔可能很长,所以上面的定时增量更新可以改为手动增量更新,没有新数据时mysql完全可以关闭以节约资源

    4.7K70

    Apache nutch1.5 & Apache solr3.6

    一个常见的问题是;我应 该使用Lucene 还是Nutch?最简单的回答是:如果你不需要抓取数据的话,应该使用Lucene。常见的应用场合是:你有数据源,需要为这些数据提供一个搜索页面。...这对于检索和醒目显示内容很有用,但对于实际搜索则不是必需的。例如,很多应用程序存储指向内容位置的指针而不是存储实际的文件内容。...如果更新比较频繁,则应该在使用率较低的时候安排优化。一个索引无需优化也可以正常地运行。优化是一个耗时较多的过程。 delete 可以通过 id 或查询来指定。... 部分中的 选项定义 newSearcher 和 firstSearcher 事件,您可以使用这些事件来指定实例化新搜索程序或第一个搜索程序时应该执行哪些查询。...缓存这些过滤器意味着对 Solr 的重复调用可以导致结果集的快速查找。更常见的场景是缓存一个过滤器,然后再发起后续的精炼查询,这种查询能使用过滤器来限制要搜索的文档数。

    1.9K40

    了解Solr

    首先Solr是基于Lucene做的 , Solr的目标是打造一款企业级的搜索引擎系统,因此它更接近于我们认识到的搜索引擎系统,它是一个搜索引擎服务,通过各种API可以让你的应用使用搜索 服务,而不需要将搜索逻辑耦合在应用中...有时候我们想通过某个字段的完全匹配来查询信息,那么设置 indexed="true"、omitNorms="true"。...举例: 产品搜索,关键词不应该只匹配产品标题,还应该匹配产品关键词及产品简介等,那么在建立索引库时,可以把标题、产品关键词、简介放到一个叫text的字段中,搜索时直接搜text字段。...,即索引库是定死的,不会再更改 (2)、native:使用本地操作系统的文件锁方式,不能用于多个solr服务共用同一个索引库。...通过这 3 种缓存,可以对 solr 的搜索实例进行调优。调整这些缓存,需要根据索引库中文档的数量,每次查询结果的条数等。

    1.5K20

    面试之Solr&Elasticsearch

    ,在查询时设置 Solr原理 Solr是基于Lucene开发的全文检索服务器,而Lucene就是一套实现了全文检索的api,其本质就是一个全文检索的过程。...全文检索就是把原始文档根据一定的规则拆分成若干个关键词,然后根据关键词创建索引,当查询时先查询索引找到对应的关键词,并根据关键词找到对应的文档,也就是查询结果,最终把查询结果展示给用户的过程 Solr基于什么...,在内存中初始化一个词典,然后在分词过程中逐个读取字符,和字典中的字符相匹配,把文档中的所有词语拆分出来的过程 solr的索引查询为什么比数据库要快 Solr使用的是Lucene API实现的全文检索。...而数据库中并不是所有的字段都建立的索引,更何况如果使用like查询时很大的可能是不使用索引,所以使用solr查询时要比查数据库快 solr索引库个别数据索引丢失怎么办 首先Solr是不会丢失个别数据的。...如果索引库中缺少数据,那就向索引库中添加 Lucene索引优化 直接使用Lucene实现全文检索已经是过时的方案,推荐使用solr。

    2.1K10

    搜索引擎solr和elasticsearch

    检索器的功能是根据用户的查询在索引库中快速检出文档,进行文档与查询的相关度评价,对将要输出的结果进行排序,并实现某种用户相关性反馈机制。...用户接口的作用是输入用户查询、显示查询结果、提供用户相关性反馈机制。...就其本身而言,Lucene是当前以及最近几年最受欢迎的免费Java信息检索程序库。人们经常提到信息检索程序库,虽然与搜索引擎有关,但不应该将信息检索程序库与搜索引擎相混淆。...它们都是通过从互联网上提取的各个网站的信息(以网页文字为主)而建立的数据库中,检索与用户查询条件匹配的相关记录,然后按一定的排列顺序将结果返回给用户,因此他们是真正的搜索引擎。...Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。

    75030

    在Solr中搜索人名的小建议

    虽然很难起一个完美的名字,但是我们可以使用Solr的一些功能,使绝大多数英文名搜索达到绝佳的效果。 还记得“作者阿尔法”的辉煌时代吗?...你能发现其中的小错误吗?提示:它与使用短语查询有关。这种方法不适用于哪类查询?...这样就可以简单地使用查询分析链对[d] [g] [turnbull]进行标记。结果将出现索引名称Douglas G. Turnbull出现的每一处(以及有David G. Turnbull的地方)!...只需重复之前的操作,而不是重新搜索: AuthorsPre:“Turnbull,D.”...除了我所违反的文化习惯之外,还有很多问题留给读者: 来Solr培训解决这些问题! 您如何完全匹配前缀名称? 您怎么确定哪些查询标记是用于中间名,姓和名的?

    2.7K120

    ASP.NET 2.0 中的异步页

    然后,ASP.NET 调用使用 AddOnPreRenderCompleteAsync 注册的 Begin 方法。Begin 方法的任务是启动诸如数据库查询或 Web 服务调用的异步操作,并立即返回。...异步数据绑定 通常情况下,ASP.NET 页并不使用 HttpWebRequest 直接请求其他页,但它们通常查询数据库并对结果进行数据绑定。因此,您将如何使用异步页执行异步数据绑定呢?...),以执行一个异步数据库查询。...从外观上看,该页类似于使用 GridView 呈现数据库查询结果的普通(同步)页。但是在内部,该页更具可伸缩性,因为它并不挂起线程池线程以等待查询返回。...当生成异步页时最后需要注意的一点是,不应该启动来自 ASP.NET 使用的同一线程池的异步操作。

    1.9K90

    Lucene&Solr&ElasticSearch-面试题

    4.GitHub使用Elasticsearch来检索超过1300亿行代码。 5.每天,Goldman Sachs使用它来处理5TB数据的索引,还有很多投行使用它来分析股票市场的变动。...全文检索就是把原始文档根据一定的规则拆分成若干个关键词,然后根据关键词创建索引,当查询时先查询索引找到对应的关键词,并根据关键词找到对应的文档,也就是查询结果,最终把查询结果展示给用户的过程 Solr基于什么...而数据库中并不是所有的字段都建立的索引,更何况如果使用like查询时很大的可能是不使用索引,所以使用solr查询时要比查数据库快 solr索引库个别数据索引丢失怎么办 首先Solr是不会丢失个别数据的。...solr和lucene的区别 Solr和Lucene的本质区别有以下三点:搜索服务器,企业级和管理。Lucene本质上是搜索库,不是独立的应用程序,而Solr是。...所以说,一句话概括Solr: Solr是Lucene面向企业搜索应用的扩展 Lucene: 是一个索引与搜索类库,而不是完整的程序。

    2.1K00

    solr使用教程【面试+工作】

    Solr vs Lucene Solr与Lucene 并不是竞争对立关系,恰恰相反Solr 依存于Lucene,因为Solr底层的核心技术是使用Lucene 来实现的,Solr和Lucene的本质区别有以下三点...Lucene本质上是搜索库,不是独立的应用程序,而Solr是。Lucene专注于搜索底层的建设,而Solr专注于企业应用。Lucene不负责支撑搜索服务所必须的管理,而Solr负责。...5.Solr基础 因为 Solr 包装并扩展了Lucene,所以它们使用很多相同的术语。更重要的是,Solr 创建的索引与 Lucene 搜索引擎库完全兼容。...这对于检索和醒目显示内容很有用,但对于实际搜索则不是必需的。例如,很多应用程序存储指向内容位置的指针而不是存储实际的文件内容。...也就是说缓存里总会给你多出10条的数据.让你点示下一页时很快拿到数据.listener选项定义 newSearcher 和 firstSearcher 事件,您可以使用这些事件来指定实例化新搜索程序或第一个搜索程序时应该执行哪些查询

    8.3K60

    【ES三周年】elasticsearch 认知

    有什么简单易用的实时数据获取方案吗?为何不尝试Elasticsearch的实时搜索功能? 如何展现数据 存储数据和检索数据是最终目的吗?当然不是!数据的真正价值和最终的目的是为商业决策提供有力的支撑。...,并自带分布式协调管理功能;而Solr需要依赖Zookeeper进行分布式协调管理 Elasticsearch基本是开箱即用,解压之后就可以使用;相对而言,Solr使用难度较大。...Solr提供的功能繁杂;而Elasticsearch注重核心功能,高级功能大多数由第三方插件提供,例如图形化界面需要Kibana来支撑。...再例如:一个需求是进行分配,关系型数据库需要依靠其他的组件才能完成这种查询,查询的结果只能是满足匹配,但是不能按照匹配成都进行打分排序;ES建立在Lucene基础之上,与生俱来就能完成分词匹配,并且支持多种打分排序算法...但是分库分表有多种策略,需要使用人员对业务数据特别精通才能进行正确的选择。另外,分库分表会对一些业务造成延迟,如查询结果的合并及多表的Join操作。

    1.3K40

    全文搜索引擎选 ElasticSearch 还是 Solr?

    确实,我们大部分的查询功能都可以通过数据库查询获得,如果查询效率低下,还可以通过建数据库索引,优化 SQL 等方式提升效率,甚至通过引入缓存来加快数据的返回速度。...对于这些非结构化的数据文本,关系型数据库搜索不是能很好的支持。 索引的维护 一般传统数据库,全文检索都实现的很鸡肋,因为一般也没人用数据库存文本字段。...Lucene 不是一个完整的应用程序,而是一个代码库和 API,可以很容易地用于向应用程序添加搜索功能。...你应该使用哪一个? ? img 历史比较 Apache Solr 是一个成熟的项目,拥有庞大而活跃的开发和用户社区,以及 Apache 品牌。...Solr 贡献者和提交者来自许多不同的组织,而 Elasticsearch 提交者来自单个公司。 ④成熟度 Solr 更成熟,但 ES 增长迅速,我认为它稳定。 ⑤文档 Solr 在这里得分很高。

    1.2K10

    全文搜索引擎选ElasticSearch还是Solr?

    确实,我们大部分的查询功能都可以通过数据库查询获得,如果查询效率低下,还可以通过建数据库索引,优化 SQL 等方式提升效率,甚至通过引入缓存来加快数据的返回速度。...对于这些非结构化的数据文本,关系型数据库搜索不是能很好的支持。 索引的维护 一般传统数据库,全文检索都实现的很鸡肋,因为一般也没人用数据库存文本字段。...Lucene 不是一个完整的应用程序,而是一个代码库和 API,可以很容易地用于向应用程序添加搜索功能。...你应该使用哪一个? ? 历史比较 Apache Solr 是一个成熟的项目,拥有庞大而活跃的开发和用户社区,以及 Apache 品牌。...Solr 贡献者和提交者来自许多不同的组织,而 Elasticsearch 提交者来自单个公司。 ④成熟度 Solr 更成熟,但 ES 增长迅速,我认为它稳定。 ⑤文档 Solr 在这里得分很高。

    88810

    全文搜索引擎选 ElasticSearch 还是 Solr?

    确实,我们大部分的查询功能都可以通过数据库查询获得,如果查询效率低下,还可以通过建数据库索引,优化 SQL 等方式提升效率,甚至通过引入缓存来加快数据的返回速度。...对于这些非结构化的数据文本,关系型数据库搜索不是能很好的支持。 索引的维护 一般传统数据库,全文检索都实现的很鸡肋,因为一般也没人用数据库存文本字段。...Lucene 不是一个完整的应用程序,而是一个代码库和 API,可以很容易地用于向应用程序添加搜索功能。...你应该使用哪一个? ? 历史比较 Apache Solr 是一个成熟的项目,拥有庞大而活跃的开发和用户社区,以及 Apache 品牌。...Solr 贡献者和提交者来自许多不同的组织,而 Elasticsearch 提交者来自单个公司。 ④成熟度 Solr 更成熟,但 ES 增长迅速,我认为它稳定。 ⑤文档 Solr 在这里得分很高。

    1K20

    全文搜索引擎 Elasticsearch 还是 Solr?

    确实,我们大部分的查询功能都可以通过数据库查询获得,如果查询效率低下,还可以通过建数据库索引,优化 SQL 等方式提升效率,甚至通过引入缓存来加快数据的返回速度。...对于这些非结构化的数据文本,关系型数据库搜索不是能很好的支持。 索引的维护 一般传统数据库,全文检索都实现的很鸡肋,因为一般也没人用数据库存文本字段。...Lucene 不是一个完整的应用程序,而是一个代码库和 API,可以很容易地用于向应用程序添加搜索功能。...你应该使用哪一个? ? 历史比较 Apache Solr 是一个成熟的项目,拥有庞大而活跃的开发和用户社区,以及 Apache 品牌。...Solr 贡献者和提交者来自许多不同的组织,而 Elasticsearch 提交者来自单个公司。 ④成熟度 Solr 更成熟,但 ES 增长迅速,我认为它稳定。 ⑤文档 Solr 在这里得分很高。

    1.2K20

    java转大数据方向如何走?

    第二章:更高效的WordCount 2.1 学点SQL吧 你知道数据库吗?你会写SQL吗?如果不会,请学点SQL吧。...为什么说Hive是数据仓库工具,而不是数据库工具呢?...而Hive,也是具备这两个特点,因此,Hive适合做海量数据的数据仓库工具,而不是数据库工具。 2.4 安装配置Hive 请参考1.1 和 1.2 完成Hive的安装配置。...Hive: 数据仓库 可以用SQL查询,可以运行Map/Reduce程序。用来计算趋势或者网站日志,不应用于实时查询,需要很长时间返回结果。 HBase: 数据库。非常适合用来做大数据的实时查询。...课程​ 1) 什么是solr 2) 为什么工程中要使用solr 3) Solr的原理 4) 如何在tomcat中运行solr 5) 如何利用solr进行索引与搜索 6) solr的各种查询

    9710

    Lucene&Solr框架之第二篇

    Field类型: 1.图书id 是否分词:不分词,因为不会根据商品id来搜索商品 是否索引:索引,因为可能需要根据图书ID进行搜索 是否存储:要存储,因为查询结果页面需要使用id这个值...mybatis price:55.0 pic:88272828282.jpg 因为在创建索引时经过分析name Filed域已经把大写转小写了,所以索引表中的term此项是【mybatis】而不是...以上两种条件最终的查询结果是不同的,但如果理解错误很容易误解为查询结果应该是一样的。...: Solr:4.10.3 Jdk环境:1.7(solr4.10 不能使用jdk1.7以下) 服务器:Tomcat 7 8.5.Solr服务部署 上面拷贝并配置的不是SolrWeb...更新索引 Solr只能更新已经存在的索引 查询结果: 3. 如果使用了solr不存在的Field,是不允许的: 4. 如果不带id域也是不允许的: 5.

    1.6K10

    全文搜索,ElasticSearch和Solr哪个更好用?

    确实,我们大部分的查询功能都可以通过数据库查询获得,如果查询效率低下,还可以通过建数据库索引,优化 SQL 等方式提升效率,甚至通过引入缓存来加快数据的返回速度。...对于这些非结构化的数据文本,关系型数据库搜索不是能很好的支持。 索引的维护 一般传统数据库,全文检索都实现的很鸡肋,因为一般也没人用数据库存文本字段。...Lucene 不是一个完整的应用程序,而是一个代码库和 API,可以很容易地用于向应用程序添加搜索功能。...你应该使用哪一个? 历史比较 Apache Solr 是一个成熟的项目,拥有庞大而活跃的开发和用户社区,以及 Apache 品牌。...Solr 贡献者和提交者来自许多不同的组织,而 Elasticsearch 提交者来自单个公司。 ④成熟度 Solr 更成熟,但 ES 增长迅速,我认为它稳定。 ⑤文档 Solr 在这里得分很高。

    1.8K20

    初识 ElasticSearch,一个上天下地的搜索引擎 No.158

    故事讲完了,大家一定很好奇,搜索引擎不是一个非常难的东西吗?你看百度,Google,不都是一个搜索引擎,这太复杂了趴? 对啊!...早在2013年初,GitHub就抛弃了Solr,采取ElasticSearch 来做PB级的搜索。 而维基百科,早早就启动了以elasticsearch为基础的核心搜索架构。...2.大蕉了解solr不,为啥用es不用solr 我司就还在用solr进行搜索 Solr 索引效率没有 ES 高,非常明显,主要瓶颈在 IO 这块,ES在实时搜索领域碾压solr。...3.多表关联查询支持吗? ES6.X 后支持,我使用的场景不多,更多还是单索引内的聚合。 4.es适不适用全量存储,可以当做“db”用,还是要存储索引用字段,和主键,再查bd或者缓存之类的?...8.直接进es吗 还是mq到es ?去重怎么样? 只能根据id去重,如果对于重复要求很高,要自行设计id系统,先查询后写入。 (感谢iMLe0n's 同学的整理)

    97230
    领券