2010-02-05 56 views
0

我刚开始使用SOLR。我已经在solrconfig.xml中配置了数据目录。但是,我注意到最后总是创建一个名为index的子目录。有什么办法可以避免它?solr索引子目录

+0

我想问一个新手是否需要重新配置solrconfig.xml中的dataDir,你能解释一下吗?通常你不需要这样做...... – harschware 2010-02-05 23:52:33

+0

为什么它会打扰你? – 2010-02-06 00:25:57

+0

我没有说这让我困扰,它没有。但通常不需要重新配置数据目录,因此它听起来像是他的陷阱的来源。 – harschware 2010-02-06 03:41:09

回答

2

从我solrconfig.xml中:

<!-- Used to specify an alternate directory to hold all index data 
    other than the default ./data under the Solr home. 
    If replication is in use, this should match the replication configuration. -->  
<!-- <dataDir>${solr.solr.home}data</dataDir> --> 

的SOLR索引将建在这个目录中,当你启动服务器SOLR。其中的'index'目录是SOLR服务器放置所有索引数据的位置,没有它的话你不会有有效的SOLR安装。

+0

真的吗?当然,这是我不想存在的“索引”子目录,因为我想访问当前正在工作的Lucene索引,并且我无法更改路由。如果我尝试通过solrj来完成它,它会是同一个事件吗? – Carlos 2010-02-06 15:28:27

+1

我认为你真正的问题可能是“什么是从Lucene迁移到SOLR的一些好方法”。我建议为此打开另一个问题。 – harschware 2010-02-06 18:02:38

+0

您是否尝试将SOLR_HOME设置为包含“索引”目录的路径?在不更改配置的情况下启动SOLR服务器,您将看到SOLR_HOME中包含的基本目录集。关闭它,然后用你的Lucene数据复制索引路径。也许这将工作。不要忘记将你的模式设计为​​与之前问题中建议的@Maurcio相匹配。 – harschware 2010-02-06 18:10:43

2

似乎这里有一个简单的解决方案。

说你的Lucene的目录/path/to/lucene/lucene_index 和Solr的数据目录为/path/to/solr/data,在其内部,它希望找到一个/index子目录。

为什么不符号链接/path/to/solr/data/index/path/to/lucene/lucene_index像这样?

ln -s /path/to/lucene/lucene_index /path/to/solr/data/index 

当然,这里假设solr只会在给定lucene原始索引时工作。

+0

我认为这是一个非常简单和好主意,我会做,非常感谢你 – Carlos 2010-02-10 10:14:18