Пользовательский UDAF не работает (Ksql: Confluent) - PullRequest
0 голосов
/ 23 мая 2018

У меня возникают проблемы при создании пользовательского UDAF в Ksql.Вариант использования - найти «первое» и «последнее» значение столбца в падающем окне.Там нет такого встроенного 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/

i. создал UDAF & AggregateFunctionFactory и зарегистрировал его в FunctionRegistry следующим образом:

addAggregateFunctionFactory(new MyAggFunctionFactory());

ii. Создайте jar-файл ksql-engine и замените его в сливном пакете по следующему пути $ CONFLUENT_HOME / share / java / ksql.

iii.Restarted ksql-server

Однако, похоже, что функция не зарегистрирована. Любые предложения?

Confluent Версия: 4.1.0

Примечание: Iпопытался создать простой UDF. Это работает хорошо. Проблема с UDAF

1 Ответ

0 голосов
/ 23 мая 2018

Проблема заключалась в том, что я назвал функцию «Первая», которая, кажется, является ключевым словом.Поменял имя функции, все заработало

...