Flink CEP Streaming: пакетный режим, непрерывный или микро-пакетный?
Я пытаюсь понять этот пример Flink CEP
https://github.com/tillrohrmann/cep-monitoring Я выполнил этот пример Flink CEP в распределенном режиме (1 мастер и 3 ядра). Теперь я записываю вывод в файлы, поэтому мой вывод записывается в 3 файла из-за 3 ядер.. В одном файле я вижу записи следующим образом:
TemperatureAlert(4), For Temperature:110.60808293330018,At Timestamp : 1464259424016
TemperatureAlert(4), For Temperature:102.75469017603604,At Timestamp : 1464259486205
TemperatureAlert(4), For Temperature:110.98650912782037,At Timestamp : 1464259492214
TemperatureAlert(4), For Temperature:115.47245702561352,At Timestamp : 1464259554901
TemperatureAlert(1), For Temperature:113.65291115679136,At Timestamp : 1464259735252
TemperatureAlert(1), For Temperature:110.88374917920495,At Timestamp : 1464259795436
TemperatureAlert(1), For Temperature:116.23995588293668,At Timestamp : 1464259810056
TemperatureAlert(4), For Temperature:103.27459440260448,At Timestamp : 1464259929121
TemperatureAlert(1), For Temperature:114.53029859331343,At Timestamp : 1464259942139
TemperatureAlert(4), For Temperature:109.13921010205338,At Timestamp : 1464260060204
(4,117.14184470661019) ,1464259692594
TemperatureWarning(4,115.08289903597866) ,1464259701806
TemperatureWarning(4,113.9136297471108) ,1464259723436
TemperatureWarning(1,112.15684481878216) ,1464259733249
TemperatureWarning(1,113.65291115679136) ,1464259735252
TemperatureWarning(1,125.07387226846537) ,1464259770401
TemperatureWarning(1,100.829623781131) ,1464259776409
TemperatureWarning(4,105.76155716070109) ,1464259789027
TemperatureWarning(1,110.88374917920495) ,1464259795436
TemperatureWarning(1,110.03271176117211) ,1464259803447
TemperatureWarning(1,108.99904165096143) ,1464259809255
TemperatureWarning(1,116.23995588293668) ,1464259810056
TemperatureWarning(1,113.74475027506949) ,1464259815664
TemperatureWarning(4,118.65623814713382) ,1464259826078
TemperatureWarning(1,125.24779125130385) ,1464259877349
TemperatureWarning(4,110.38935504983476) ,1464259890467
TemperatureWarning(4,101.92222208289115) ,1464259927319
TemperatureWarning(4,103.27459440260448) ,1464259929121
TemperatureWarning(1,113.15048106140453) ,1464259937533
TemperatureWarning(1,114.53029859331343) ,1464259942139
TemperatureWarning(4,112.4172409140119) ,1464259953755
TemperatureWarning(1,107.21833971444117) ,1464259981194
TemperatureWarning(1,105.08408728033956) ,1464259981594
TemperatureWarning(4,108.83063471822507) ,1464259990608
TemperatureWarning(4,127.9723904319025) ,1464260054997
TemperatureWarning(4,106.06561268720989) ,1464260059804
TemperatureWarning(4,109.13921010205338) ,1464260060204
Теперь, если мы начнем смотреть со строки № 5. Мы можем проверить, что все Температурные оповещения, которые были напечатаны из строки № 5 (т.е. для температуры: 113.65291115679136), мы можем определить температуры ниже (Температура: 113.65291115679136 присутствует в строке 15) в TemperatureWarning. что означает, что мы можем определить, для каких температур были напечатаны предупреждения... но как быть с предупреждениями, генерируемыми из строки с 1 по 4? Вы можете даже найти то же самое для записи в строке №. 11. Я имею в виду, как мы можем определить, для каких температурных предупреждений были сгенерированы предупреждения? Это выполняет потоковую передачу в пакетном режиме, непрерывном или микро-пакетном режиме??
1 ответ
TemperatureWarning генерируется, когда в окне 10 секунд с одного и того же идентификатора стойки появляются два последовательных события температуры.
TemperatureAlert генерируется, когда в течение 20-секундного окна с одним и тем же идентификатором стойки поступают два последовательных температурных предупреждения, и температура TemperatureWarnings, похоже, увеличивается. TemperatureAlert имеет данные первого температурного предупреждения
Это источник непрерывного потока