在一个项目中,实时生成的统计数据需要关联另外一张表(并非维表),需要统计的数据表是Kafka数据,而需要关联的表,由于不是维度,不能按照主键查询,所以如果放在MySQL上,将存在严重的性能问题,这个时候我想到用将两张表的数据都生成为Kafka数据,然后进行Join操作。中途发现这种性能特别差,而且表变更会产生多条kakfa记录,导致计算越来越来,最后改成upsert-kafka,下面记录下处理过程。
刚开始用kafka,建表语句如下:
Create Table `kafka_t_test1` (
`f_id` bigint,
`f_name` string,
PRIMARY KEY (`f_corp_id`,`f_id`) NOT ENFORCED
) WITH (
'connector' = 'kafka',
'topic' = 't_test',
'properties.bootstrap.servers' = '10.10.10.1',
'properties.group.id' = 'test',
'value.format' = 'json',
'value.fields-include'