Executing the preceding topology results in the following output:
00:00 ERROR: [campaign10,0,2, 0.0] 00:00 ERROR: [campaign6,2,4, 0.5] 00:00 ERROR: [campaign7,4,7, 0.5714285714285714] 00:00 ERROR: [campaign8,1,1, 1.0]
Notice that the values are the same as those emitted by Pig. If we let the topology run, we eventually see decreasing effectiveness scores as shown in the following output:
00:03 ERROR: [campaign10,0,112, 0.0] 00:03 ERROR: [campaign6,2,224, 0.008928571428571428] 00:03 ERROR: [campaign7,4,392, 0.01020408163265306] 00:03 ERROR: [campaign8,1,56, 0.017857142857142856]
This stands to reason because we now have a real-time system, which is continually consuming the same impression events. Since we are only counting all the distinct click-thru and the entire set of click-thru has already been accounted for in the calculation, the effectiveness will continue to drop.