我有一个来自Kafka流的字符串,它看起来很像JSONFORMAT文档的用法示例。
我现在纠结的是如何将它转换成一个 traversable JSON,这样我就可以在文档的示例中将“age”值放入表中的一列。
我尝试了以下方法:jsonPath(JSONFORMAT(meta), '$.age')"
jsonPath(TOJSONMAPSTR(meta), '$.age')"
它是JSONFORMAT和jsonPath函数的组合。
我已经验证了当我的Kafka流中的数据实际上被格式化为JSON时,jsonPath
函数可以按预期工作。"jsonPath(source, '$.init_sync_state')"
,所以我不怀疑这是我的麻烦的根本原因。
我希望这个函数组合首先将字符串转换为JSON,然后从特定路径提取值。但是,JSONFORMAT似乎并没有将数据转换为JSON。我也试过TOJSONMAPSTR,但结果是一样的。
有没有一种方法可以将字符串转换为Pinot中的JSON结构?我错过了什么明显的东西吗?
任何帮助都是非常感谢的。谢谢你!
1条答案
按热度按时间cgyqldqp1#
已解决:
解决方案是使用jsonIndex将JSON展平为
STRING
列,然后使用jsonPath
访问它。例如,在上面的例子中,我们会这样做:
然后使用如下所示的转换列将age插入到我的列中: