当前位置: 首页 > solr
  • ReplicationHandler的复制功能来说,核心的问题确定是在一个时间点要复制哪些文件,这就用上了lucene的IndexDeletionPolicy的特性。slave启动时会创建SnapPuller对象,SnapPuller会启动一个线程定时的(pollInterval间隔)从master复制数据(fetchLatestIndex方法)。

    阅读全文
    solr, 搜索 779 人阅读 抢沙发 , , ,
  • SolrIndexSearcher是基于lucene的IndexSearcher。lucence在通过各种Scorer操作匹配Query的结果时没有使用OpenBitSet,而是主要使用队列、堆等集合来操作匹配结果的收集、合并等操作,而Collector.collect的会是最后真正匹配的结果。从实际测试的效果来看,lucence性能要比solr提升数倍。

    阅读全文
    solr, 搜索 854 人阅读 抢沙发
  • 如果要使用filter query,就要开启filter cache,并确保filter cache能容纳所有的filter query。solr是按每个fq参数缓存结果的,所以fq=fid:1、fq=fid:2、fq=(fid:1 OR fid:2)是3个缓存项。

    阅读全文
    solr, 搜索 2,237 人阅读 抢沙发
  • 对于查询来说,如果查询字段要来自多个字段,一种选择是使用CopyField,化多个字段为一个字段,缺点是不能区分各个字段的重要度差别。比如文章的标题和摘要,标题就要比摘要重要性更强,如果有这方面的要求,可以选择查询多个字段的做法。

    阅读全文
    solr, 搜索 594 人阅读 抢沙发
  • Solr复制的部分原理是:从库默认的索引目录是index,在正常复制时,从库只是对该目录里的索引文件做修改(添加新的,删除旧的),但当从库索引提交点(IndexCommit)的generation大于主库时,会发生索引文件的全copy,也就是抛弃当前使用的索引目录,而是使用新生成的临时索引目录作为新的索引目录,并修改index.properties,临时目录的命名格式就是取当前的一时间戳(也就是bug所在,但到这里我还没发现这个bug)。

    阅读全文
    solr, 搜索 471 人阅读 抢沙发 , ,
  • 每个SolrCore对应着一个索引库,几乎所有的操作都是针对单个SolrCore进行的,似乎Solr的初衷就是如此,并没有考虑到多个SolrCore之间的关联。所以,可以看到的是,每个SolrQueryRequest都会关联到一个SolrCore,SolrRequestHandler的获得也是从SolrCore取得的。Solr对配置文件的把握上也不够好。

    阅读全文
    solr, 搜索 2,120 人阅读 抢沙发 ,
  • LRUCache和FastLRUCache两种Cache实现是两种很不同的思路。两者的相同点是,都使用了现成的Map来维护数据。不同点是如何来淘汰数据。LRUCache(也就是LinkedHashMap)格外维护了一个结构,在做存取操作时同时更新该结构,优点在于淘汰操作是O(1)的.缺点是需要对存取操作加互斥锁。FastLRUCache正相反,它没有额外维护新的结构.

    阅读全文
    solr, 搜索 1,963 人阅读 抢沙发 , , ,
  • Solr查询的核心类就是SolrIndexSearcher,每个core通常在同一时刻只由当前的SolrIndexSearcher供上层的handler使用,而Solr的各种Cache是依附于SolrIndexSearcher的,SolrIndexSearcher在则Cache生,SolrIndexSearcher亡则Cache被清空close掉。Solr中的应用Cache有filterCache、queryResultCache、documentCache等,这些Cache都是SolrCache的实现类,并且是SolrIndexSearcher的成员变量,各自有着不同的逻辑和使命.

    阅读全文
    solr, 搜索 601 人阅读 抢沙发 ,
  • 1、master的工作 对于ReplicationHandler的复制功能来说,核心的问题确定是在一个时间点要复制哪些文件,这就用上了lucene的IndexDeletionPolicy的特性。 lucene在初始化时,会调用IndexDeletionPolicy.onInit(List<? extends IndexCommit> commits)方法;lucene在commit(触发的时机也可以是optimize、close,so ...

    阅读全文
    solr, 搜索 529 人阅读 抢沙发