使用ZooKeeper在SolrCloud中配置DataImportHandler

我有一个像这样配置的SolrCloud:探索SolrCloud,区别在于我使用Solr 4.0.0 Beta。 短暂的配置:

  • ZooKeeper默认端口2181
  • Solr运行在不同端口的3个实例
  • 这只是为了测试目的。 所需的配置是3个ZooKeeper实例(每个Solr实例一个)。 我设法用curl命令来索引一些XML文件。

    问题:

  • 我如何配置DIH /集合? 我设法改变了solrconfig.xml(config为dataimport-handler),在lib中添加了适当的数据库连接驱动程序,但是在solr admin中,我得到了“抱歉,没有定义数据导入处理程序!” 这些更改可以在zookeeper中看到(我看到data_config.xml),在solr管理面板中,我可以看到更新版本的solrconfig.xml。

  • 任何有关Ubuntu 12.04 LTS在单台或多台计算机上进行solrcloud生产部署的优秀教程(带有前面提到的所需配置的somthink)?

  • 任何意见,将不胜感激! 提前致谢!


    通常DIH配置与您使用solrCloud配置中的单个Solr实例或多个实例无关。 DIH将在当前实例的Lucene索引中写入数据,然后由zooKeeper在其他实例上进行扩展。

    确保您的DIH配置合理:

    在solrconfig.xml中,加载所有必需的库。 这意味着两个DIH罐子:

    <lib dir="../../../dist/" regex="solr-dataimporthandler-4.3.0.jar" />
    <lib dir="../../../dist/" regex="solr-dataimporthandler-extras-4.3.0.jar" />
    

    以及您可能需要的其他jar(如数据库JDBC驱动程序等)。

    仍然在solrconfig.xml中确保DIH处理程序被声明,如下所示:

    <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
        <lst name="defaults">
            <str name="config">data-config.xml</str>
        </lst>
    </requestHandler>
    

    最后,在DIH处理程序(data-config.xml)中声明的配置文件应与solrconfig.xml位于相同的“conf”目录中,并且应具有适当的内容,如下所示:

    <dataConfig>
    
    <dataSource type="JdbcDataSource" name="myDataSource" driver="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@someHost:1521:someDb" user="someUser" password="somePassword" batchSize="5000"/>  
    
    <document name="myDoc" >
        <entity name="myDoc" dataSource="myDatasource" transformer="my.custom.Transformer" query="select col1, col2, col3 from table1 where whatever" />
    </document>
    
    </dataConfig>
    
    链接地址: http://www.djcxy.com/p/63311.html

    上一篇: Configure DataImportHandler in SolrCloud with ZooKeeper

    下一篇: Broken pipe only at the second send on a closed socket