微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

每当使用 Debezium postgres 连接器在这些表中发生更改时,加入多个表并插入/更新/删除到单个表中

如何解决每当使用 Debezium postgres 连接器在这些表中发生更改时,加入多个表并插入/更新/删除到单个表中

让我们考虑以下示例,我需要将 3 个表的数据连接起来,并在单个表中的任何一个发生更改时插入/更新/删除到单个表中。

之前我写了一个join查询来合并6个表的数据,并在插入记录(student_info_table)之前截断现有表(student_info_table)的数据。

3 tables join:

select s.id,s.name,sc.school_name,sc.address from student s inner join student_school_mapping ssm on s.id = ssm.student_id inner join school sc on sc.id=ssm.school_id;

Single table

create table student_info_table(id number,student_name varchar,school_name varchar,school_addr varchar)

比如我想在student表中插入一条记录,插入成功后进行如下操作,

Calling the above join query and prepare the list of studentinfo entity results

studentInfoRepo.deleteall();

studentInfoRepo.saveAll(List<StudentInfo>)

这种方法给我的 Spring Boot 应用带来了性能瓶颈。

我正在尝试使用 Debezium 连接器来实​​现这一点。但我没有看到任何组合所有表并插入单个表的选项。

我在 Debezium 中看到了这些选项,但这些是 CDC 正在发生的单个表

"table.whitelist": "public.student,public.student1"

Debezium 中是否有任何标准机制来处理多个表连接 CDC ?

如果有其他方法必须处理这种类型的用例,你能建议我吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。