Mysql 将多个表中的数据索引到solr中

Mysql 将多个表中的数据索引到solr中,mysql,solr,Mysql,Solr,我有三张桌子A、B和C 表a idA------------PK 可乐 表b idB------------PK col1B 表C idC------PK col1C 我正在为单核中的solr中的所有数据编制索引,可能会使用TableB或TableA覆盖TableC数据,反之亦然。因为主键是自动生成的,并且可能在不同的表中具有相同的值。我该如何解决这个问题 我有两种解决方案。 1) 我正在考虑在solr中添加一个后缀pk_tablename来生成唯一的id 2) 为每个表创建单独的核心 你建议哪

我有三张桌子A、B和C

表a

idA------------PK
可乐

表b
idB------------PK
col1B

表C
idC------PK
col1C

我正在为单核中的solr中的所有数据编制索引,可能会使用TableBTableA覆盖TableC数据,反之亦然。因为主键是自动生成的,并且可能在不同的表中具有相同的值。我该如何解决这个问题

我有两种解决方案。
1) 我正在考虑在solr中添加一个后缀pk_tablename来生成唯一的id

2) 为每个表创建单独的核心

你建议哪一个最好?
在我的业务领域中,表可以有数百万条记录


请告知。

解决方案1应该可以。如果希望通过单个查询搜索所有表,可以将不同表中的数据存储在单个核心中。你的主键很好。此外,您还可以将表名存储在另一个字段中,因此您的文档将如下所示:

{
  unique_id: 1234_A,
  id: 1234,
  table: A,
  data: <text field>
}
{
唯一识别码:1234,
身份证号码:1234,
表:A,
数据:
}
存储表名将帮助您执行仅限于某些表的搜索