首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kafka中用于KSQL操作的主题数据格式

Kafka中用于KSQL操作的主题数据格式
EN

Stack Overflow用户
提问于 2020-04-13 10:26:07
回答 1查看 404关注 0票数 0

我刚开始使用ksql,当我从一开始就打印主题时,我得到了以下格式的数据。

代码语言:javascript
复制
   rowtime: 4/12/20, 9:00:05 AM MDT, key: {"messageId":null}, value: {"WHS":[{"Character Set":"UTF-8","action":"finished","Update-Date-Time":"2020-04-11 09:00:02:25","Number":0,"Abbr":"","Name":"","Name2":"","Country-Code":"","Addr-1":"","Addr-2":"","Addr-3":"","Addr-4":"","City":"","State":""}]}

但是,KSQL中的所有示例都具有以下格式的数据

代码语言:javascript
复制
{"ROWTIME":1537436551210,"ROWKEY":"3375","rating_id":3375,"user_id":2,"stars":3,"route_id":6972,"rating_time":1537436551210,"channel":"web","message":"airport refurb looks great, will fly outta here more!"}

所以我不能执行任何操作,格式如下所示

代码语言:javascript
复制
Key format: JSON or SESSION(KAFKA_STRING) or HOPPING(KAFKA_STRING) or TUMBLING(KAFKA_STRING) or KAFKA_STRING
Value format: JSON or KAFKA_STRING

关于我的话题。如何将数据修改为特定格式?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-06-03 23:39:20

ksqlDB还不支持JSON消息键(参见tracking Github issue)。

但是,您仍然可以访问键和值中的数据。JSON键毕竟只是一个字符串!

重新格式化后的值如下所示:

代码语言:javascript
复制
{
  "WHS":[
    {
      "Character Set":"UTF-8",
      "action":"finished",
      "Update-Date-Time":"2020-04-11 09:00:02:25",
      "Number":0,
      "Abbr":"",
      "Name":"",
      "Name2":"", 
      "Country-Code":"",
      "Addr-1":"",
      "Addr-2":"",
      "Addr-3":"",
      "Addr-4":"",
      "City":"",
      "State":""
    }
  ]
}

假设所有行都共享一种通用格式,ksqlDB可以很容易地处理。

要导入您的流,您应该能够运行如下代码:

代码语言:javascript
复制
-- assuming v0.9 of Kafka
create stream stuff 
  (
    ROWKEY STRING KEY,
    WHS ARRAY<
      STRUCT<
        `Character Set` STRING,
        action STRING,
        `Update-Date-Time` STRING,
        Number STRING,
        ... etc
      >
    >
   )
   WITH (kafka_topic='?', value_format='JSON');

值列WHS是一个结构数组(其中将只有一个元素),结构定义了您需要访问的所有字段。请注意,某些字段名称需要使用引号,因为它们包含无效字符,例如空格和破折号。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61180715

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档