Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在solr 4中导入和索引mongodb数据_Mongodb_Solr - Fatal编程技术网

如何在solr 4中导入和索引mongodb数据

如何在solr 4中导入和索引mongodb数据,mongodb,solr,Mongodb,Solr,我是solr和mongodb的新用户。我已经在mongodb中创建了数据库和集合 现在,我想在solr中导入并索引mongodb集合,用于搜索数据库中大量数据的应用程序。我在网上搜索了很多,但没有得到令人满意的信息。谁能告诉我如何在solr中使用步骤进行索引 以下是我创建的收藏: db.stud.find().pretty() { "_id" : 1, "roll" : 59, "name" : "sachin", "class" : "MCA" } { "_id" : 2, "roll" :

我是
solr
mongodb
的新用户。我已经在
mongodb
中创建了数据库和集合

现在,我想在
solr
中导入并索引
mongodb
集合,用于搜索数据库中大量数据的应用程序。我在网上搜索了很多,但没有得到令人满意的信息。谁能告诉我如何在
solr
中使用步骤进行索引

以下是我创建的收藏:

db.stud.find().pretty()

{ "_id" : 1, "roll" : 59, "name" : "sachin", "class" : "MCA" }
{ "_id" : 2, "roll" : 57, "name" : "jay", "class" : "MCA" }
{ "_id" : 3, "roll" : 101, "name" : "akash", "class" : "BCA" }
{ "_id" : 4, "roll" : 11, "name" : "amit", "class" : "MCS" }
{ "_id" : 5, "roll" : 55, "name" : "shiv", "class" : "MCA" }
以下是我的data-config.xml文件,如果我有任何错误,请告诉我:

    <dataConfig>
     <dataSource name="MyMongo" type="MongoDataSource" database="sachin" />
     <document name="Products">
         <entity processor="MongoEntityProcessor"
                 query="{'Active':1}"
                 collection="stud"
                 datasource="MyMongo"
                 transformer="MongoMapperTransformer" >
             <field column="_id"           name="_id"       mongoField="_id"/>
             <field column="roll"     name="roll" mongoField="roll"/>
             <field column="name"           name="name"  />
        <field column="class"           name="class"  />

         </entity>
     </document>
 </dataConfig>

我的数据库名是‘sachin’

我不知道如何定义schema.xml文件,以及根据数据库模式应该修改哪些内容。以下是我在schema.xml中所做的更改:

 <uniqueKey>_id</uniqueKey>
         <schema name="MongoEX" version="1.1">
        <fields>

         <field name="_id" type="string" indexed="true" stored="true"  />
         <field name="roll" type="sint" indexed="true" stored="true"  />
         <field name="name" type="string" indexed="true" stored="true"  />
         <field name="class" type="string" indexed="true" stored="true" />
       </fields>
\u id
我在solrconfig.xml文件中所做的更改如下所示:

 <lib dir="../../../../dist/" regex="solr-dataimporthandler-.*\.jar" />
    <lib dir="../../../dist/" regex="mongo-2.10.1.jar" />
    <lib path="../../../dist/mongo-connector-1.1.1.jar"/>
    <lib path="../../../dist/solr-dataimporthandler-4.4.0.jar"/> 

    <requestHandler name="/sqldataimport"
        class="org.apache.solr.handler.dataimport.DataImportHandler">
        <lst name="defaults">
          <str name="config">/home/ubuntucomp/Music/solr-4.4.0/example/example-DIH/solr/MongoEX   /conf/data-config.xml</str>
        </lst>
      </requestHandler>

/home/ubuntucomp/Music/solr-4.4.0/example/example-DIH/solr/MongoEX/conf/data-config.xml
请告诉我我在所有上述文件中犯了什么错误,这样我就可以索引mongodb了


先谢谢你

您是否尝试了新的solr mongodb连接器


您已经提到
query=“{'Active':1}”
螺柱集合中没有字段名为
Active

您可以按照中提到的步骤操作


希望对您有所帮助。

您尝试了什么?您必须将MongoDB数据写入Solr XML文件,然后对Solr本身进行软提交或完全提交。这真的很简单,在所有的数据库中都是一样的problem@PrashantThorat你知道Solr只接受XML文件吗?没有任何复制步骤可以自动将数据发送到Solr,您必须手动执行,但是,似乎有人已经这样做了:我在哪里可以找到/获取mongo-connector-1.1.1.jar?ist是否能快速处理1000多万份文档的mongo Collections?和@Sammaye-你如何在solr中索引大型mongo集合?