Как мы обрабатываем два разных входных потока в onTuple оператора Custom() IBM InfoSphere Streams?
В пользовательском операторе я пытаюсь открыть один файл, который был представлен при запуске, и токенизировать значения из файла и сравнить значения с входными потоками, который является другим файлом.
1 ответ
Вы можете иметь несколько предложений onTuple в логике вашего пользовательского оператора.
Вот пример. Здесь у нас есть два входных порта Beacon_1_out0 и Beacon_2_out0. Я добавил условие onTuple для каждого входного порта и выполняю обработку данных, поступающих с каждого входного порта. Обработка каждого порта происходит независимо.
() as Custom_3 = Custom(Beacon_1_out0 ; Beacon_2_out0)
{
logic
onTuple Beacon_1_out0:
{
printStringLn((rstring)Beacon_1_out0);
}
onTuple Beacon_2_out0:
{
printStringLn((rstring)Beacon_1_out0);
}
}
Если вы сравниваете данные из нескольких потоков, вы можете использовать оператор Join. Оператор Join должен позволить вам легче сравнивать данные из нескольких входных потоков.