将solr 1.4索引升级到solr 3.3?
我有一个使用ApacheSolr1.4的现有索引构建 我想在3.3版中使用这个现有索引。正如您所知,索引格式在3.x之后会发生更改,那么如何才能做到这一点呢将solr 1.4索引升级到solr 3.3?,solr,indexing,luke,Solr,Indexing,Luke,我有一个使用ApacheSolr1.4的现有索引构建 我想在3.3版中使用这个现有索引。正如您所知,索引格式在3.x之后会发生更改,那么如何才能做到这一点呢 我已使用Luke将现有索引(即1.4版本)导出为XML。如果您有数据:最好的方法是为solr 3.3中的所有新数据编制索引 可以使用数据导入处理程序为导出的XML文件编制索引 如果建立新索引不是您的解决方案,您有不同的可能性: 据我所知,Solr3.3可以读取旧索引。 所以一个想法就是使用碎片。一个分片用于旧数据(只读),另一个分片用于新数
我已使用Luke将现有索引(即1.4版本)导出为XML。如果您有数据:最好的方法是为solr 3.3中的所有新数据编制索引 可以使用数据导入处理程序为导出的XML文件编制索引 如果建立新索引不是您的解决方案,您有不同的可能性: 据我所知,Solr3.3可以读取旧索引。
所以一个想法就是使用碎片。一个分片用于旧数据(只读),另一个分片用于新数据。不幸的是,在此解决方案中,您将无法修改旧数据。有两种方法:
java -cp work/Jetty_0_0_0_0_8983_solr.war__solr__k1kf17/webapp/WEB-INF/lib/lucene-core-3.3.0.jar org.apache.lucene.index.IndexUpgrader -verbose /path/to/index/directory
WARNING: LowerCaseFilterFactory is using deprecated LUCENE_24 emulation. You should at some point declare and reindex to at least 3.0, because 2.x emulation is deprecated and will be removed in 4.0
直到您告诉solrconfig.xml您已经准备好使用新索引格式的所有功能为止。您可以通过将以下内容添加到solrconfig.xml(在顶层,在abortOnConfigurationError设置之后)来完成此操作
卢塞诺33
1.我将旧schema.xml(1.4v)复制到新服务器(3.3)2.我将旧索引复制到3.3中的新索引目录并重新启动服务器,一切正常!奇怪的是,我在3.3发行说明中看到新索引结构与旧索引结构不兼容…无论如何,我很高兴一切正常:)“新的索引结构与旧的不兼容”…是的…我想,这是对的。但我认为,你的3.3系统运行在类似“兼容模式”的模式下“并且不使用新的索引格式。也许,你的索引仍然是1.4,这在lucene 4中是不受支持的-如果你考虑将来升级的话。你是对的,但是如何升级呢?这是我的主要问题。不确定,但如果你去3.x,更新意味着重新索引。我不确定solr4是否会提供迁移工具。
<!-- Controls what version of Lucene various components of Solr
adhere to. Generally, you want to use the latest version to
get all bug fixes and improvements. It is highly recommended
that you fully re-index after changing this setting as it can
affect both how text is indexed and queried.
-->
<luceneMatchVersion>LUCENE_33</luceneMatchVersion>