我们正在面临SOLR搜索的一些问题。SOLR 3.1索引问题
我们使用SOLR 3.1和Jetty。我们根据我们的要求设定了架构。我们设置了data-config.xml来将数据从我们的数据库(Sql Server 2005)导入到Collection(Core)中。 我们需要导入的数据库中有320,000条记录。
完成导入后,当我尝试Solr管理搜索中的所有记录
http://localhost:8983/solr/Collection_201/admin/
这表明我总人数290发现,000因此,30,000记录丢失。
现在下面的问题是在我的脑海
我怎么能知道哪个记录不正确索引?或哪些记录丢失?要知道这一点,我试过一个窍门,我想我应该在数据库中放入一个字段,以知道哪些记录导入到SOLR集合中,哪些不是。但是最大的问题是如何在从data-config.xml导入时更新这个数据库字段。因为标签只允许您搜索查询或换句话说要返回。所以,我有另一个想法仍然更新该数据库字段。我在我的数据库中创建了一个存储过程,其中包含更新查询,该更新查询将更新数据库中的字段,然后我选择查询,只是返回1条记录以满足要求。但是当我试图运行DIH时,它返回“索引失败。回滚所有更改”错误消息,并且没有任何输入。当我评论更新查询到存储过程,然后它的工作。所以它不允许我从存储过程运行更新查询。所以我努力找到一种方法来从DIH更新数据库。但我真的没有找到任何伤心的微笑,我拒绝这个想法来更新数据库。
我清除了索引并重新开始导入数据。这一次,我尝试手动运行solr管理导入页面,每回合5,000条记录。最后,对于一些如何记录仍然缺失。
这是可能的,它没有正确承诺。我在导入页面的文档(http:// localhost:8983/solr/Collection_201/dataimport?command = full-import & clean = false)中自动提交导入的数据。但我个人注意到它有一段时间或有时它不。所以它真的让我疯狂伤心的微笑
现在我完全沮丧,并开始思考我使用SOLR的方式是否正确。如果我是对的,那么它是否可靠?如果我错了,请指导我什么是我的错误?
请请指导我们如何轻松地同步。与我们的数据库收集,并确保它是100%同步。