我正在尝试将嵌套的数组对象插入KSQL表。我的表结构如下:
CREATE TABLE nlpArticlesTrain ("articleText" VARCHAR,
"ner" ARRAY<STRUCT<"text" VARCHAR, "label" VARCHAR>>,
"rel" ARRAY<STRUCT<"head" VARCHAR, "tail" VARCHAR, "rel" VARCHAR, "prob" DOUBLE>>)
WITH (KAFKA_TOPIC = 'nlpArticlesTrain', PARTITIONS=1, REPLICAS=1, VALUE_FORMAT='AVRO');
[我知道我可以使用支持Avro的标准Kafka生产者,但是我正在寻找一种方法INSER INTO VALUES
到表中,以便填充下面的流/主题。 documentation of query with structured data中缺少插入示例。
INSERT INTO nlpArticlesTrain (articleText,ner,rel) VALUES ("string", [{..}],[{..}])
不起作用。
更具体的例子:
INSERT INTO nlpArticlesTrain (articleText,ner,rel) VALUES ("some", [{'text': 'The Mexican Ministry of Health', 'label': 'ORG'}, {'text': 'Tuesday', 'label': 'DATE'}, {'text': 'at least 29', 'label': 'CARDINAL'}], [{'head': 'The Mexican Ministry of Health', 'tail': 'Tuesday', 'rel': 'subsidiary', 'prob': 0.3873162269592285}])
这取决于您所使用的ksqlDB版本。更高版本支持ARRAY
构造函数,这是您插入数组所需要的。例如: