
solr
文章平均质量分 87
iteye_10738
这个作者很懒,什么都没留下…
展开
-
solr cloud 之添加,删除,更新Document
搭建完成solr cloud的集群之后,接下来的工作就是需要向集群中导入数据,之后可能要更新数据,或者删除数有,假设有有一个服务的schema中的field是这样定义的: <fields> <field name="id" type="string" indexed="true" stored="true" required="tru原创 2013-05-09 16:01:17 · 427 阅读 · 0 评论 -
Solr PostFilter优化查询性能
背景 实际业务场景中,有时会需要两阶段过滤,最终的搜索结果是在前一个搜索结果上进一步搜索而得到的(search-within-search)的特性。 假设,最终搜索结果集是由(A AND B)两个条件对应的命中结果集求交而得到的。如果A条件对应的文档集合非常小(大概不超过300个),而B条件对应的文档集合非常大。在这样的场景下在solr中使用二阶段过滤的方式来查询...2017-02-07 14:20:27 · 652 阅读 · 0 评论 -
合理设置Solr Schema防止出现OOM
背景: 晚上收到报警,说线上的一个solr的collection挂掉了,赶紧打开远程服务起查看服务器的状态,果然业务方查询全部超时,增量更新也宕机了,从异常信息上来看是集群中没有可用的节点可以使用,看到这样的问题,第一想到的是要重启一下服务器。悲剧的是重启完服务器,服务只正常了15秒钟,转而又全部宕机。 判断是VM的堆内存溢出了,看了一下虚拟机启动参数...原创 2016-12-20 08:52:31 · 912 阅读 · 0 评论 -
solr5和solr6相同集群共存冲突解决
问题背景 公司内部从2015年9月开始部署了Solr5.3 搜素引擎服务,到今年年初Solr的版本已经发展到了Solr6.x,无奈开源社区的发张的确很快,因为Solr6服务端整合了Facebook的prestodb数据库的Sql解析引擎( http://prestodb-china.com/),可以让Solr6服务端支持简单的sql语句查询,一时间搜索引擎可以支持Sql语...原创 2016-11-04 12:41:41 · 336 阅读 · 0 评论 -
solr多组Merge Query原理
概要 Solr和ES搜索引擎都有集群模式,在Solr中可以向任何一个节点发起一个查询,如果查询中没有附带路由router键的话,该节点会扮演Merge的角色向集群中每个share的一个副本发起查询,最终将所有取到的结果排序,返回给客户端。 详细 为了测试需要在测试集群中构建一个Collection,有两个shard(shard中只有一个副本),使用查询Q为:id:99...原创 2018-07-31 15:44:16 · 643 阅读 · 0 评论 -
Solr 自定义FieldType Analyzer不生效 问题查找
最近做得一个项目,需要实现字段的拼音搜索功能,在schema配置了一个fieldtyp,如下: <fieldType name="cn_pinyin" class="solr.TextField" positionIncrementGap="100" autoGeneratePhraseQueries="true" omitNorms="true" o..原创 2016-03-30 17:22:29 · 447 阅读 · 0 评论 -
Solr DocValues详解
什么是docValues?docValues是一种记录doc字段值的一种形式,在例如在结果排序和统计Facet查询时,需要通过docid取字段值的场景下是非常高效的。为什么要使用docValues?这种形式比老版本中利用fieldCache来实现正排查找更加高效,更加节省内存。倒排索引将字段内存切分成一个term列表,每个term都对应着一个docid列表,这样一种结构使得查...2016-02-05 13:40:27 · 409 阅读 · 0 评论 -
基于Solr的多表join查询加速方法
前言DT时代对平台或商家来说最有价值的就是数据了,在大数据时代数据呈现出数据量大,数据的维度多的特点,用户会使用多维度随意组合条件快速召回数据。数据处理业务场景需要实时性,需要能够快速精准的获得到需要的数据。之前的通过数据库的方式来处理数据的方式,由于数据库的某些固有特性已经很难满足大数据时代对数据处理的需求。 所以,在大数据时代使用hadoop,hive,spark,作为处理离线...2016-02-01 17:47:30 · 1596 阅读 · 0 评论 -
Solr facet rage 查询
需求是在按照某一个时间字段统计在一个时间区间中,以天为单位统计时间单位内的记录条数: 使用的Solr file type是:org.apache.solr.schema.TrieDateField 查询url是: http://10.1.7.41:8983/solr/search4totalpay_shard1_replica1/select? f...原创 2016-01-19 18:44:04 · 162 阅读 · 0 评论 -
Solr性能优化之filterCache
什么是filtercache? solr应用中为了提高查询速度有可以利用几种cache来优化查询速度,分别是fieldValueCache,queryResultCache,documentCache,filtercache,在日常使用中最为立竿见影,最有效的应属filtercache,何谓filtercache?这个需要从一段solr的查询日志开始说起,下面是我截取的solr运行中打...2013-12-15 14:49:35 · 462 阅读 · 0 评论 -
在本地启动一个EmbeddedSolrServer 用于测试
import org.apache.solr.client.solrj.SolrQuery;import org.apache.solr.client.solrj.embedded.EmbeddedSolrServer;import org.apache.solr.client.solrj.response.QueryResponse;import org.apache....原创 2013-11-01 15:42:44 · 260 阅读 · 0 评论 -
Solr分词fieldType分词解析器设置错误导致查询错误
今天在线上生产环境中碰到一个Solr的查询条件无法匹配到查询结果的问题,问题虽小,但是找到问题的过程确实比较周折,还好最终问题只是一层窗户纸,这里记录以下,以作备忘。 问题是这样的,业务方告诉我有一个查询条件,没有办法匹配到目标记录。查询条件是:name:Y9砵仔糕吕托 收到问题,于是就开始了我的排错之路。 首先,确认了一下name字段原始的文本字段...2017-04-13 14:19:00 · 633 阅读 · 0 评论