我们有一个“微服务”平台,我们正在使用 Debezium 从这些平台上的数据库捕获变更数据,效果很好。
现在,我们希望能够轻松地加入这些主题并将结果流式传输到一个可由多个服务使用的新主题。
免责声明:这假设 ksqldb 和 cli v0.11(似乎其中大部分内容在旧版本中可能不起作用)
来自两个数据库实例的两个表流入 Kafka 主题的示例:
-- source identity microservice (postgres)
CREATE TABLE public.user_entity (
id varchar(36) NOT NULL,
first_name varchar(255) NULL,
PRIMARY KEY (id)
);
-- ksql stream
CREATE STREAM stream_user_entity WITH (KAFKA_TOPIC='cdc.identity.public.user_entity', value_format='avro');
-- source organization microservice (postgres)
CREATE TABLE public.user_info (
id varchar(36) NOT NULL,
user_entity_id varchar(36) NOT NULL,
business_unit varchar(255) NOT NULL,
cost_center varchar(255) NOT NULL,
PRIMARY KEY (id)
);
-- ksql stream
CREATE STREAM stream_user_info WITH (KAFKA_TOPIC='cdc.application.public.user_info', value_format='avro');
Run Code Online (Sandbox Code Playgroud)
选项 …