histo.proto 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package NKiwiAggr;
  2. // THistoRec represents a value record added to a multihistogram
  3. message THistoRec {
  4. optional uint64 Id = 1; // Current histogram identifier
  5. optional double Value = 2;
  6. optional double Weight = 3 [default = 1.0]; // You can set a certain weight to each record or just skip records using Weight=0
  7. }
  8. message THistoRecs {
  9. repeated THistoRec HistoRecs = 1;
  10. }
  11. enum EHistogramType {
  12. HT_FIXED_BIN_HISTOGRAM = 1;
  13. HT_ADAPTIVE_DISTANCE_HISTOGRAM = 2;
  14. HT_ADAPTIVE_WEIGHT_HISTOGRAM = 3;
  15. HT_ADAPTIVE_HISTOGRAM = 4; // if the quality function is unknown
  16. HT_ADAPTIVE_WARD_HISTOGRAM = 5;
  17. }
  18. message THistogram {
  19. optional uint64 Id = 1;
  20. optional double MinValue = 2;
  21. optional double BinRange = 4; // for FIXED_BIN_HISTOGRAM only. And it's OK that it is 4 after 2
  22. repeated float Freq = 5;
  23. repeated float Position = 6; // for ADAPTIVE histograms only
  24. optional double MaxValue = 7;
  25. optional EHistogramType Type = 8; // Empty field means FIXED_BIN_HISTOGRAM
  26. }
  27. // Multihistogam
  28. message THistograms {
  29. repeated THistogram HistoRecs = 1;
  30. }