如何索引elasticsearch的规范化sql数据库

0ejtzxu1  于 2021-08-01  发布在  Java
关注(0)|答案(1)|浏览(325)

我已经用一个与elasticsearch索引同步的表索引了一个数据库(sql)。现在我想用多个规范化表索引一个数据库。那么,我应该如何索引这些表呢?在索引数据库表的过程中,我应该在日志文件中编写多个连接查询,还是应该逐个索引每个表并执行多索引搜索?但是对于第二种方法,我不知道如何为相关的sql查询形成elasticsearch查询。我对elasticsearch是个新手。因此,任何关于这个问题的指导都将不胜感激。这里我还附加了数据库的模式。还有一件事,我使用php客户端来搜索和显示数据。

nxagd54h

nxagd54h1#

首先,一切都将取决于您希望如何在elasticsearch中构建索引,也就是说,如果您希望每个表都有一个索引,或者多个表都有一个索引。
我的建议是:
在数据库中创建触发器以审核每个更改(插入、更新、删除),并将其与操作和状态一起存储在新闻表中。
为每种类型的新奇事物或表格创建一个视图,该视图将取决于您希望如何索引所有内容。
使用jdbc调用表示状态等于pending(raw)的视图。
使用过滤器将数据标准化,并将其调整为elasticsearch结构。
使用jdbc输出更新数据库,方法是将newness设置为processed,以防止它出现在查询中。
除此之外,我建议您将这些表放在一个索引中,例如employee,您可以为数据库中的每个实体创建不同的嵌套对象,例如department等,您可以在其中添加每个实体的代码标记和描述。你能检查一下是否还不清楚吗?

相关问题