Class: SolidCacheMongoid::Entry::Size::Estimate

Inherits:
Object
  • Object
show all
Defined in:
app/models/solid_cache_mongoid/entry/size/estimate.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(samples:) ⇒ Estimate

Returns a new instance of Estimate.



54
55
56
57
# File 'app/models/solid_cache_mongoid/entry/size/estimate.rb', line 54

def initialize(samples:)
  @samples = samples
  @max_records ||= Entry.id_range
end

Instance Attribute Details

#max_recordsObject (readonly)

Returns the value of attribute max_records.



52
53
54
# File 'app/models/solid_cache_mongoid/entry/size/estimate.rb', line 52

def max_records
  @max_records
end

#samplesObject (readonly)

Returns the value of attribute samples.



52
53
54
# File 'app/models/solid_cache_mongoid/entry/size/estimate.rb', line 52

def samples
  @samples
end

Instance Method Details

#exact?Boolean

Returns:

  • (Boolean)


63
64
65
# File 'app/models/solid_cache_mongoid/entry/size/estimate.rb', line 63

def exact?
  outliers_count < samples || sampled_fraction == 1
end

#sizeObject



59
60
61
# File 'app/models/solid_cache_mongoid/entry/size/estimate.rb', line 59

def size
  outliers_size + non_outlier_estimated_size
end