Solr 在数据库中索引多个非关系表
我正在使用solr6.4.X索引mysql数据。我已经为相同的设置了dataimporthandler。问题是只要我们在DB中有关系表,它就可以正常工作,但我有10个表,它们之间没有任何关系 我试着将它们添加为渗流实体,但不知什么原因,它不起作用。因此,基本上我需要对两点发表意见:Solr 在数据库中索引多个非关系表,solr,dataimporthandler,solr6,Solr,Dataimporthandler,Solr6,我正在使用solr6.4.X索引mysql数据。我已经为相同的设置了dataimporthandler。问题是只要我们在DB中有关系表,它就可以正常工作,但我有10个表,它们之间没有任何关系 我试着将它们添加为渗流实体,但不知什么原因,它不起作用。因此,基本上我需要对两点发表意见: 通过dataimporthandler将非关系表存储到Solr中 从各个表中检索数据(我使用Solrj查询数据) 非常感谢您的帮助。谢谢我不确定DIH设置中的问题是什么,但是有多个实体,每个表一个,而表之间没有关
- 通过dataimporthandler将非关系表存储到Solr中
- 从各个表中检索数据(我使用Solrj查询数据)
非常感谢您的帮助。谢谢我不确定DIH设置中的问题是什么,但是有多个实体,每个表一个,而表之间没有关系是完全可以的。工作没有任何问题。你的问题肯定可以解决 在不了解您的问题的情况下,有人猜测:在这种情况下,人们面临的一个典型问题是,他们使用每个表中的pk作为Solr文档id,并在Solr端相互覆盖。您必须将表中唯一的内容附加到solr id,以便它们在solr中是唯一的 编辑:是的,问题是我猜的,你有这个:
<entity name="encounter_notes" pk="id" query="SELECT * from encounter_notes">
<field column="id" name="id" />
<field column="encouter_id" name="encouter_id" />
每个实体的id将相互覆盖,请对所有表执行此操作:
<entity name="encounter_notes" pk="id" query="SELECT CONCAT('notes_',id) as id, ... from encounter_notes">
<field column="id" name="id" />
<field column="encouter_id" name="encouter_id" />
所以你有像这样的ID:notes_1,notes_2,financial_class_1…@Pessimoniumm谢谢你的回复,我试图找到,因为你建议它对第一个实体运行良好,但当我尝试索引第二个实体时,它覆盖了第一个表中的数据。我已经添加了配置文件,如果可能的话,请你仔细检查一下,告诉我哪里出错了?谢谢,我的答案。顺便说一句,你应该把你的代码放在这个问题上,这样其他人也可以看到它。