damccorm opened a new issue, #20853:
URL: https://github.com/apache/beam/issues/20853

   See spec here:
   
    __ 
[_https://s.apache.org/beam-histogram-metrics_](_https://s.apache.org/beam-histogram-metrics_)
   
   A few pieces I want to highlight:
   
     *//   LINEAR(start, width, num_buckets):*
   
     *//       Bi = start **** width * i*
   
     *//       e.g. LINEAR(5, 15, 6) defines:*
   
     *//           [-INF, 5), [5, 20), [20, 35), [35, 50), [50, 65), [65, 
****INF], ...*
   
   Current Java implementation:
   
   LinearBuckets.of(5, 15, 6) will defined buckets like this (6 buckets 
excluding the infinite ranges)
   
   [-INF, 5), [5, 20), [20, 35), [35, 50), [50, 65), [65, 80), [80, 95), [95, 
****INF], ...
   
    
   
   Additionally, we should treat the infinite buckets like any other, i.e. as a 
counter in the array, rather than having separate variables for the -inf and 
inf buckets.:
   
   i.e. we can remove numTopRecords numBottomRecords
   
   public HistogramData(BucketType bucketType)
   
   { this.bucketType = bucketType; this.buckets = new 
long[bucketType.getNumBuckets()]; this.numOfRecords = 0; this.numTopRecords = 
0; this.numBottomRecords = 0; }
   
    
   
   Additionally getCount() and incBucketCount() should use those same indexes
   
   i.e. for all these functions 0 means the -INF bucket, and length - 1 means 
the INF bucket
   
   This code is only used for one internal metric, so this we should change 
this before it gets adopted in other places. 
   
    
   
   Imported from Jira 
[BEAM-12103](https://issues.apache.org/jira/browse/BEAM-12103). Original Jira 
may contain additional context.
   Reported by: [email protected].


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to