我的卡夫卡主题是以这种格式推送数据(来自
收藏
)以下内容:
[{"values":[100.000080140372],"dstypes":["derive"],"dsnames":["value"],"time":1529970061.145,"interval":10.000,"host":"k5.orch","plugin":"cpu","plugin_instance":"23","type":"cpu","type_instance":"idle","meta":{"network:received":true}}]
它是数组、int和float的组合…整个过程都在一个json数组中。结果我花了很多时间
ksql公司
对这些数据做任何事情。
当我创建“默认”流时
create stream cd_temp with (kafka_topic='ctd_test', value_format='json');
我得到这个结果:
ksql> describe cd_temp;
Field | Type
-------------------------------------
ROWTIME | BIGINT (system)
ROWKEY | VARCHAR(STRING) (system)
-------------------------------------
任何
选择
将返回rowtime和rowkey的8位十六进制值。
我花了一些时间试图提取json字段,但没有成功。我担心的是:
ksql> print 'ctd_test' from beginning;
Format:JSON
com.fasterxml.jackson.databind.node.ArrayNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode
有没有可能这个话题不能用在
ksql公司
是吗?有没有一种技术可以将外部数组解包到内部有趣的位?