Class ComEstSample

java.lang.Object
org.apache.sysds.runtime.compress.estim.AComEst
org.apache.sysds.runtime.compress.estim.ComEstSample
Direct Known Subclasses:
ComEstCompressedSample

public class ComEstSample extends AComEst
Estimate compression size based on subsample of data.
  • Constructor Details

    • ComEstSample

      public ComEstSample(MatrixBlock sample, CompressionSettings cs, MatrixBlock full, int k)
    • ComEstSample

      public ComEstSample(MatrixBlock data, CompressionSettings cs, int sampleSize, int k)
      CompressedSizeEstimatorSample, samples from the input data and estimates the size of the compressed matrix.
      Parameters:
      data - The input data toSample from
      cs - The Settings used for the sampling, and compression, contains information such as seed.
      sampleSize - The size to sample from the data.
      k - The parallelization degree allowed.
  • Method Details

    • getColGroupInfo

      public CompressedSizeInfoColGroup getColGroupInfo(IColIndex colIndexes, int estimate, int maxDistinct)
      Description copied from class: AComEst
      A method to extract the Compressed Size Info for a given list of columns, This method further limits the estimated number of unique values, since in some cases the estimated number of uniques is estimated higher than the number estimated in sub groups of the given colIndexes.
      Specified by:
      getColGroupInfo in class AComEst
      Parameters:
      colIndexes - The columns to extract compression information from
      estimate - An estimate of number of unique elements in these columns
      maxDistinct - The upper bound of unique elements allowed in the estimate, can be calculated from the number of unique elements estimated in sub columns multiplied together. This is flexible in the sense that if the sample is small then this unique can be manually edited like in CoCodeCostMatrixMult.
      Returns:
      The CompressedSizeInfoColGroup for the given column indexes.
    • getDeltaColGroupInfo

      public CompressedSizeInfoColGroup getDeltaColGroupInfo(IColIndex colIndexes, int estimate, int maxDistinct)
      Description copied from class: AComEst
      A method to extract the Compressed Size Info for a given list of columns, This method further limits the estimated number of unique values, since in some cases the estimated number of uniques is estimated higher than the number estimated in sub groups of the given colIndexes. The Difference for this method is that it extract the values as delta values from the matrix block input.
      Specified by:
      getDeltaColGroupInfo in class AComEst
      Parameters:
      colIndexes - The columns to extract compression information from
      estimate - An estimate of number of unique delta elements in these columns
      maxDistinct - The upper bound of unique elements allowed in the estimate, can be calculated from the number of unique elements estimated in sub columns multiplied together. This is flexible in the sense that if the sample is small then this unique can be manually edited like in CoCodeCostMatrixMult.
      Returns:
      The CompressedSizeInfoColGroup for the given column indexes.
    • getSortedSample

      public static int[] getSortedSample(int range, int sampleSize, long seed, int k)
    • toString

      public String toString()
      Overrides:
      toString in class AComEst