首页 > 解决方案 > 自定义 UDAF 不起作用(Ksql:Confluent)

问题描述

在 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.构建 ksql-engine jar 并在以下路径 $CONFLUENT_HOME/share/java/ksql 的 confluent 包中替换它。

iii.重启ksql-server

但是,似乎该功能未注册。有什么建议么?

汇合版本:4.1.0

注意:我尝试创建简单的 UDF 。效果很好。问题在于 UDAF

标签: apache-kafkaconfluent-platformksqldb

解决方案


问题是我将函数命名为“First”,这似乎是一些关键字。改了函数名,就可以了


推荐阅读