java.lang.Object
org.elasticsearch.search.aggregations.pipeline.MovAvgModel
org.elasticsearch.search.aggregations.pipeline.LinearModel
All Implemented Interfaces:
NamedWriteable, Writeable, ToXContent, ToXContentFragment

public class LinearModel extends MovAvgModel
Calculate a linearly weighted moving average, such that older values are linearly less important. "Time" is determined by position in collection
  • Field Details

  • Constructor Details

    • LinearModel

      public LinearModel()
    • LinearModel

      public LinearModel(StreamInput in)
      Read from a stream.
  • Method Details

    • writeTo

      public void writeTo(StreamOutput out) throws IOException
      Description copied from class: MovAvgModel
      Write the model to the output stream
      Specified by:
      writeTo in interface Writeable
      Specified by:
      writeTo in class MovAvgModel
      Parameters:
      out - Output stream
      Throws:
      IOException
    • getWriteableName

      public String getWriteableName()
      Description copied from interface: NamedWriteable
      Returns the name of the writeable object
    • canBeMinimized

      public boolean canBeMinimized()
      Description copied from class: MovAvgModel
      Returns if the model can be cost minimized. Not all models have parameters which can be tuned / optimized.
      Specified by:
      canBeMinimized in class MovAvgModel
    • neighboringModel

      public MovAvgModel neighboringModel()
      Description copied from class: MovAvgModel
      Generates a "neighboring" model, where one of the tunable parameters has been randomly mutated within the allowed range. Used for minimization
      Specified by:
      neighboringModel in class MovAvgModel
    • clone

      public MovAvgModel clone()
      Description copied from class: MovAvgModel
      Clone the model, returning an exact copy
      Specified by:
      clone in class MovAvgModel
    • doPredict

      protected double[] doPredict(Collection<Double> values, int numPredictions)
      Description copied from class: MovAvgModel
      Calls to the model-specific implementation which actually generates the predictions
      Specified by:
      doPredict in class MovAvgModel
      Parameters:
      values - Collection of numerics to movingAvg, usually windowed
      numPredictions - Number of newly generated predictions to return
      Returns:
      Returns an array of doubles, since most smoothing methods operate on floating points
    • next

      public double next(Collection<Double> values)
      Description copied from class: MovAvgModel
      Returns the next value in the series, according to the underlying smoothing model
      Specified by:
      next in class MovAvgModel
      Parameters:
      values - Collection of numerics to movingAvg, usually windowed
      Returns:
      Returns a double, since most smoothing methods operate on floating points
    • toXContent

      public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws IOException
      Throws:
      IOException
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in class MovAvgModel
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in class MovAvgModel