У меня проблема с созданием таблицы или потока в KSQL.
Я сделал все, как показано в официальных примерах, и я не понимаю, почему мой код не работает. Пример из https://docs.confluent.io/current/ksql/docs/tutorials/examples.html#joining:
CREATE TABLE pageviews_per_region_per_session AS
SELECT regionid,
windowStart(),
windowEnd(),
count(*)
FROM pageviews_enriched
WINDOW SESSION (60 SECONDS)
GROUP BY regionid;
СЕЙЧАС МОЙ КОД:
Я попытался запустить команду select в командной строке, и она РАБОТАЕТ ХОРОШО:
SELECT count(*) as attempts_count, "computer", (WINDOWSTART() / 1000) as row_time
FROM LOG_FLATTENED
WINDOW TUMBLING (SIZE 20 SECONDS)
WHERE "event_id" = 4625
GROUP BY "computer"
HAVING count(*) > 2;
Но когда я пытаюсь создать таблицу на основе этого выбора (из инструмента командной строки ksql):
CREATE TABLE `incorrect_logins` AS
SELECT count(*) as attempts_count, "computer", (WINDOWSTART() / 1000) as row_time
FROM LOG_FLATTENED
WINDOW TUMBLING (SIZE 20 SECONDS)
WHERE "event_id" = 4625
GROUP BY "computer"
HAVING count(*) > 2;
I GET AN ERROR - io.confluent.ksql.util.KsqlStatementException: Column COMPUTER cannot be resolved.
Но этот столбец существует и выберите без create table
оператор отлично работает.
Я использую последний стабильный образ KSQL (confluentinc/cp-ksql-server:5.3.1
)