我在Ksql中创建自定义UDAF时遇到问题。用例是在翻滚窗口中查找列的“第一个”和“最后一个”值。 UDAF(https://docs.confluent.io/current/ksql/docs/syntax-reference.html#aggregate-functions)没有这样的内置,所以我试图创建自定义UDAF。
我根据此文档https://www.confluent.io/blog/write-user-defined-function-udf-ksql/
执行了以下步骤我。创建了UDAF& AggregateFunctionFactory并在FunctionRegistry中注册,如下所示:
addAggregateFunctionFactory(new MyAggFunctionFactory());
ii。在以下路径$ CONFLUENT_HOME / share / java / ksql中创建ksql-engine jar并在汇合包中替换它。
iii.Restarted ksql-server
但是,似乎没有注册功能。有什么建议吗?
汇编版本:4.1.0
注意:我尝试创建简单的UDF。这很有效。问题出在UDAF
答案 0 :(得分:2)
问题是我将该功能命名为' First'这似乎是一些关键字。改变了功能名称,它起作用了