有没有在数据库中有数字ID的原因?

时间:2013-02-05 11:51:14

标签: database linux postgresql solr

我基本上有很多不同的数据库可以合并到一个SOLR商店中。它必须是这样的,我无法改变它。

我给每个数据库中的每个项目一个唯一的ID但是当我将数据库合并到SOLR中时,我发现我有多个具有相同ID的项目,例如:

Database A
Itemid: 1

Database B
Itemid: 1

SOLR:
Itemid: 1
Itemid: 1

相反,我现在拥有带有数据库名称的主ID,如下所示:

Database A
Itemid: A1

Database B
Itemid: B1

SOLR:
Itemid: A1
Itemid: B1

我的问题是,如果有非数字身份证是否有正当理由,我仍然可以根据这些身份证进行排序吗?

任何反馈都将不胜感激。

1 个答案:

答案 0 :(得分:2)

如果你关心性能而不是最好坚持使用数字ID。 (见Database Design Primay Key, ID vs String

但是为了完成你的任务,我会在数据导入阶段将数据库名称前缀添加到Solr ID。所以你会:

Database A
Itemid: 1

Database B
Itemid: 1

SOLR:
Itemid: A1
Itemid: B1