[ 
https://issues.apache.org/jira/browse/METRON-590?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15767202#comment-15767202
 ] 

ASF GitHub Bot commented on METRON-590:
---------------------------------------

Github user nickwallen commented on the issue:

    https://github.com/apache/incubator-metron/pull/395
  
    As to @mattf-horton suggestion, I had looked at the possibility of not 
using the BaseWindowedBolt and implementing that myself.  But that seems like 
worse technical debt to me.  I'd be worried about how Storm evolves the 
functionality in future versions, especially since the functionality is 
relatively new in Storm.  I'm sure you have the same concerns, you're just 
trying to help find some compromise solution here.
    
    @cestella I see what you're going for, but don't see the logic in 
reimplementing what I already have working in `ZkConfigurationManager`.  What 
if I moved `ZkConfigurationManager` and the related classes to the 
`metron-profiler-common` project.  This would ensure that it could only be used 
exclusively by the Profiler.  Then as a follow-on PR, I will reach feature 
parity with ConfiguredBolt, move `ZkConfigurationManager` back to 
`metron-common`, update `ConfiguredBolt` to use `ZkConfigurationManager`, and 
all else that is needed there.
    
    I would suggest another approach as an alternative.  This satisfies the 
concerns for multiple implementations, and results in smaller, more concise PRs.
    1. Retract this PR
    2. Enhance ZkConfigurationManager to reach feature parity with 
ConfiguredBolt, update `ConfiguredBolt` to use `ZkConfigurationManager`, then 
submit that work as a separate PR. 
    3. Create a second PR for the new client-side Profiler functions as this 
has had its own lengthy discussion back-and-forth.
    4. Create a third PR for the event time processing additions in the 
Profiler.



> Enable Use of Event Time in Profiler
> ------------------------------------
>
>                 Key: METRON-590
>                 URL: https://issues.apache.org/jira/browse/METRON-590
>             Project: Metron
>          Issue Type: Improvement
>            Reporter: Nick Allen
>            Assignee: Nick Allen
>
> There are at least two different times that are important to consider when 
> handling the telemetry messages received by Metron.  
> (1) Processing time is the time at which Metron processed the message.  
> (2) Event time is the time at which the event actually occurred.
> If Metron is consuming live data and all is well, the processing and event 
> times may remain close and consistent. When processing time differs from 
> event time the data produced by the Profiler may be inaccurate.  There are a 
> few scenarios under which these times might differ greatly which would 
> negatively impact the feature set produced by the Profiler.  
> (1) When the system has experienced an outage, for example, a scheduled 
> maintenance window. When restarted a high volume of messages will need to be 
> processed by the Profiler.  The output of the Profiler will indicate an 
> increase in activity, although no change in activity actually occurred on the 
> target network.  This could happen whether the outage was Metron itself or an 
> upstream system that feeds data to Metron.
> (2) If the user attempts to replay historical telemetry through the Profiler, 
> the Profiler will attribute the activity to the time period in which it was 
> processed.  Obviously the activity should be attributed to the time period in 
> which the raw telemetry events originated in.
> There are some scenarios when processing time might be preferred and other 
> use cases where event time is preferred.  The Profiler should be enhanced to 
> allow it to produce profiles based on either processing time or event time.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to