我刚开始使用 Lucene,我正在尝试索引数据库,以便可以对内容执行搜索。我对索引感兴趣的表有 3 个:
1. 图像表- 这是一个表,其中每个条目代表一个图像。每张图片都有一个唯一的 ID 和一些其他信息(标题、描述等)。
2. 人员表- 这是一个表,其中每个条目代表一个人。每个人都有一个唯一的 ID 和其他信息,例如(姓名、地址、公司等)
3. 贷记表——该表有3个字段(图像、人物和贷记类型)。它的目的是将一些人与图像相关联,作为该图像的学分。每张图片可以有多个人(有导演、摄影师、道具师等)。此外,一个人在多张图像中都有功劳。
我正在尝试索引这些表,以便可以使用 Lucene 执行一些搜索,但正如我所读到的,我需要展平结构。
我想到的第一个解决方案是为图像/信用人的每个组合创建 Lucene 文档。恐怕这会在索引中创建很多重复的内容(图像/人的所有细节都必须在每个文档中为每个处理图像的人复制)。
有没有使用 Lucene 经验的人可以帮助我解决这个问题?我知道非规范化没有通用的解决方案,这就是为什么我提供了一个更具体的例子。
谢谢,如果有人需要,我很乐意提供有关数据库的更多信息
PS:不幸的是,我没有办法改变数据库的结构(它属于客户端)。我必须使用我所拥有的。