[英]KSQLDB, create table from a kafka topic not working?
我创建了一个 kafka 主题,这是架构。
# topic_name: test.rf.partner
{
"connect.name": "test.RF.partner.Value",
"fields": [
{
"name": "partnerID",
"type": "int"
},
{
"name": "name",
"type": "string"
}
],
"name": "Value",
"namespace": "test.RF.partner",
"type": "record"
}
我尝试使用创建一个表,
CREATE TABLE partner (partnerID INTEGER PRIMARY KEY, name VARCHAR) WITH
(KAFKA_TOPIC = 'test.RF.partner',VALUE_FORMAT='AVRO');
然后,当我这样做时,我得到的结果是空数据,主题中的数据不会进入表格,
SELECT * FROM partner EMIT CHANGES;
ksql> SELECT * FROM partner EMIT CHANGES;
+----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+
|PARTNERID |NAME |
+----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+
更新:
ksql> PRINT 'rytfit.RF.partner' FROM BEGINNING;
Key format: JSON or HOPPING(KAFKA_STRING) or TUMBLING(KAFKA_STRING) or KAFKA_STRING
Value format: AVRO
rowtime: 2021/09/27 19:07:05.563 Z, key: {"partnerID":100}, value: {"partnerID": 100, "name": "kalai"}, partition: 0
rowtime: 2021/09/27 19:07:05.564 Z, key: {"partnerID":101}, value: {"partnerID": 101, "name": "kal"}, partition: 0
rowtime: 2021/09/27 19:07:05.564 Z, key: {"partnerID":102}, value: {"partnerID": 102, "name": "kalai"}, partition: 0
rowtime: 2021/09/27 19:07:05.564 Z, key: {"partnerID":103}, value: {"partnerID": 103, "name": "Intelles"}, partition: 0
rowtime: 2021/09/27 19:07:05.565 Z, key: {"partnerID":104}, value: {"partnerID": 104, "name": "kala"}, partition: 0
rowtime: 2021/09/27 19:07:05.565 Z, key: {"partnerID":105}, value: {"partnerID": 105, "name": "kala"}, partition: 0
rowtime: 2021/09/27 19:07:05.565 Z, key: {"partnerID":106}, value: {"partnerID": 106, "name": "kala"}, partition: 0
rowtime: 2021/09/27 19:07:05.566 Z, key: {"partnerID":107}, value: {"partnerID": 107, "name": "partner"}, partition: 0
rowtime: 2021/09/27 19:07:05.566 Z, key: {"partnerID":108}, value: {"partnerID": 108, "name": "part"}, partition: 0
rowtime: 2021/09/27 19:07:05.566 Z, key: {"partnerID":109}, value: {"partnerID": 109, "name": "par"}, partition: 0
对于任何现有主题,我都会遇到同样的情况。 但是,解决方法是先创建一个 stream,然后使用聚合器方法LATEST_BY_OFFSET
创建物化视图
CREATE TABLE partners AS
SELECT partnerID,
LATEST_BY_OFFSET(name) AS name
FROM partners_stream
GROUP BY partnerID
EMIT CHANGES;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.