当需要合并两个不同项目或者是多个分开配置的服务器时,你既可以使用lucene-misc里面的IndexMergeTool工具,也可以使用CoreAdminHandler。

要合并索引,必须满足如下要求: 1.两个索引必须兼容:schema需要包含相同的字段,并且字段分析方法相同。 2.必须不包含相同数据。 最好两个索引是用相同的schema.xml文件生成的。

一.使用IndexMergeTool

1.找到lucene-core和lucene-misc JAR包。可以通过solr.war解压得到(jar xvf solr.war).这两个JAR包应该在/WEB-INF/lib下。

2.拷贝到好找的地方。

3.保证两个要合并的集合都处于关闭状态。

4.java -cp /path/to/lucene-core-VERSION.jar:/path/to/lucene-misc-VERSION.jar org/apache/lucene/misc/IndexMergeTool /path/to/newindex /path/to/index1 /path/to/index2

创建一个/path/to/newindex的新索引,包含index1和index2

5.拷贝这个新文件夹到你应用的solr索引(先移除旧的),启动solr。

二.使用CoreAdmin

这个方法使用CoreAdminHandler来运行MERGEINDEXES命令,包含indexDir和srcCore两个参数。

indexDir:用来定义要合并的core的索引数据所在的文件夹,然后将他们合并到一个在开始合并之前已经存在的第三方core中。索引必须在Solr host所在的磁盘中,这样会让分布式环境用起来比较笨重。有了indexDir参数之后,需要在相应的core中调用commit(这样IndexWriter才会关闭)。

solr合并集合的更多相关文章

  1. Solr合并索引方式

    索引合并并不会判断uniqueKey,所以主键有重复不会判断主键会重复. 官方的解释是不要有重复. 要合并索引,它们必须满足以下要求: 这两个索引必须兼容:它们的架构应该包含相同的字段,并且它们应该以 ...

  2. hdu4334 Trouble 合并集合可以降低复杂度阿啦啦

    我觉得这一题方法很好的,但是之前完全没有碰到过,也没有想到,这么简单直接降低复杂度的方法 先将两个集合合并成1个集合,合并两个(s1,s2),即每个集合里n^2个数,还剩一个n个数的集合 这样还剩超时 ...

  3. JAVA List合并集合

    import java.util.ArrayList; import java.util.List; public class test { public static void main(Strin ...

  4. AcWing 836. 合并集合

    地址  https://www.acwing.com/problem/content/838/ 一共有n个数,编号是1~n,最开始每个数各自在一个集合中. 现在要进行m个操作,操作共有两种: “M a ...

  5. solr多集合配置

    1.1 多SolrCore配置 一个solr工程中可以配置多个SolrCore实例. 分享牛原创(尊重原创 转载对的时候第一行请注明,转载出处来自分享牛http://blog.csdn.net/qq_ ...

  6. solr管理集合

    其实完全版的管理,在web页面上就有. 同时,在官网文档上,也有:https://lucene.apache.org/solr/guide/6_6/coreadmin-api.html#CoreAdm ...

  7. 最完整的合并相交集合的Java代码(查并集)

    这个是自己写的算法,如果有大牛,麻烦帮我并行化.初学者则可以学到不少东西. 产生测试用例 import java.io.*; import java.util.Random; public class ...

  8. c++ 集合的增删改查,与两集合的合并 缺陷(空间大小不灵活)

    #if 1 #include <iostream> #include <stdlib.h> using namespace std; class List { public: ...

  9. 如何将List集合中相同属性的对象合并

    在实际的业务处理中,我们经常会碰到需要合并同一个集合内相同属性对象的情况,比如,同一个用户短时间内下的订单,我们需要将各个订单的金额合并成一个总金额.那么用lambda表达式和HashMap怎么分别处 ...

随机推荐

  1. curl 做爬虫 用服务器代理ip

    有时候会ip会封锁,所以会用一些模拟代理ip进行抓取测试 从网上找了一下代码 function curl_string ($url,$user_agent,$proxy){        $ch = ...

  2. 洛谷2019 3月月赛 T2

    题干 洛谷同款 T2?(看似比T1简单些) 二维前缀和嘛?[多简单 我天天拿二维前缀和水DP] 这是前缀和的预处理 2333 处理出来所有的情况 某个地方要加上mod再%mod 如果没有这一步 那么 ...

  3. ASP.NET MVC5 之 分部页

    1.分部页 _PartialPage.cshtml @model List<string> <a>完美世界</a> @foreach (var item in Mo ...

  4. 国际化------international

    1.配置web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=& ...

  5. 使用mysqldump导出数据库(表)

    mysqldump用来备份数据库或在不同数据库之间迁移数据,mydqldump的备份内容包括用来创建表和装载表的SQL语句. 一.mysqldump使用方法 (1).备份单个数据库或数据库中的部分表, ...

  6. A8ERP权限管理系统

  7. [ CodeForces 1063 B ] Labyrinth

    \(\\\) \(Description\) 给出一个四联通的\(N\times M\) 网格图和起点.图中有一些位置是障碍物. 现在上下移动步数不限,向左至多走 \(a\) 步,向右至多走 \(b\ ...

  8. opencv 检测图片中圆形物体(解决乱线问题)

    2018-03-0418:03:12 整体代码如下: def detect_circle_demo (image): # 降噪处理 dst = cv.pyrMeanShiftFiltering(ima ...

  9. Linux学习日记之Deepin下查看crontab运行日志

    Deepin使用 journalctl 替代了 syslog 来处理系统日志 故查看crontab运行日志应使用 journalctl -f /usr/sbin/cron

  10. UUID 生成32位随机串

    java通过jdk自带的UUID,生成32位的随机串 private static String generate_UUID() { UUID uuid=UUID.randomUUID(); Stri ...