Class ComEstSample
- java.lang.Object
-
- org.apache.sysds.runtime.compress.estim.AComEst
-
- org.apache.sysds.runtime.compress.estim.ComEstSample
-
public class ComEstSample extends AComEst
Estimate compression size based on subsample of data.
-
-
Constructor Summary
Constructors Constructor Description ComEstSample(MatrixBlock data, CompressionSettings cs, int sampleSize, int k)
CompressedSizeEstimatorSample, samples from the input data and estimates the size of the compressed matrix.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description CompressedSizeInfoColGroup
getColGroupInfo(IColIndex colIndexes, int estimate, int maxDistinct)
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.CompressedSizeInfoColGroup
getDeltaColGroupInfo(IColIndex colIndexes, int estimate, int maxDistinct)
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.static int[]
getSortedSample(int range, int sampleSize, long seed, int k)
String
toString()
-
Methods inherited from class org.apache.sysds.runtime.compress.estim.AComEst
clearNNZ, combine, combine, computeCompressedSizeInfos, getColGroupInfo, getDeltaColGroupInfo, getNumColumns, getNumRows
-
-
-
-
Constructor Detail
-
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 fromcs
- 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 Detail
-
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 classAComEst
- Parameters:
colIndexes
- The columns to extract compression information fromestimate
- An estimate of number of unique elements in these columnsmaxDistinct
- 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 classAComEst
- Parameters:
colIndexes
- The columns to extract compression information fromestimate
- An estimate of number of unique delta elements in these columnsmaxDistinct
- 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)
-
-