Class: Rafflesia::ServerlessWorkloadProfile

Inherits:
Types::BaseModel
  • Object
show all
Defined in:
lib/rafflesia/cache/serverless_workload_profile.rb

Constant Summary collapse

HASH_ATTRS =
{
  algorithm: :algorithm,
  block_size_bytes: :block_size_bytes,
  cache_mode: :cache_mode,
  default_limit: :default_limit,
  default_nprobe: :default_nprobe,
  description: :description,
  max_blocks_per_query: :max_blocks_per_query,
  max_materialized_bytes_per_query: :max_materialized_bytes_per_query,
  max_object_bytes_per_query: :max_object_bytes_per_query,
  max_object_reads_per_query: :max_object_reads_per_query,
  min_byte_reduction_fraction: :min_byte_reduction_fraction,
  min_hit_overlap_fraction: :min_hit_overlap_fraction,
  min_recall_at_1: :min_recall_at_1,
  min_recall_at_10: :min_recall_at_10,
  min_recall_at_100: :min_recall_at_100,
  name: :name,
  require_benchmark: :require_benchmark,
  require_exact_verification: :require_exact_verification,
  require_routing: :require_routing,
  require_zero_materialization: :require_zero_materialization,
  workload: :workload
}.freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(json) ⇒ ServerlessWorkloadProfile

Returns a new instance of ServerlessWorkloadProfile.



55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 55

def initialize(json)
  super()
  hash = self.class.normalize(json)
  @algorithm = hash[:algorithm]
  @block_size_bytes = hash[:block_size_bytes]
  @cache_mode = hash[:cache_mode]
  @default_limit = hash[:default_limit]
  @default_nprobe = hash[:default_nprobe]
  @description = hash[:description]
  @max_blocks_per_query = hash[:max_blocks_per_query]
  @max_materialized_bytes_per_query = hash[:max_materialized_bytes_per_query]
  @max_object_bytes_per_query = hash[:max_object_bytes_per_query]
  @max_object_reads_per_query = hash[:max_object_reads_per_query]
  @min_byte_reduction_fraction = hash[:min_byte_reduction_fraction]
  @min_hit_overlap_fraction = hash[:min_hit_overlap_fraction]
  @min_recall_at_1 = hash[:min_recall_at_1]
  @min_recall_at_10 = hash[:min_recall_at_10]
  @min_recall_at_100 = hash[:min_recall_at_100]
  @name = hash[:name]
  @require_benchmark = hash[:require_benchmark]
  @require_exact_verification = hash[:require_exact_verification]
  @require_routing = hash[:require_routing]
  @require_zero_materialization = hash[:require_zero_materialization]
  @workload = hash[:workload]
end

Instance Attribute Details

#algorithmObject

Returns the value of attribute algorithm.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def algorithm
  @algorithm
end

#block_size_bytesObject

Returns the value of attribute block_size_bytes.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def block_size_bytes
  @block_size_bytes
end

#cache_modeObject

Returns the value of attribute cache_mode.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def cache_mode
  @cache_mode
end

#default_limitObject

Returns the value of attribute default_limit.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def default_limit
  @default_limit
end

#default_nprobeObject

Returns the value of attribute default_nprobe.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def default_nprobe
  @default_nprobe
end

#descriptionObject

Returns the value of attribute description.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def description
  @description
end

#max_blocks_per_queryObject

Returns the value of attribute max_blocks_per_query.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def max_blocks_per_query
  @max_blocks_per_query
end

#max_materialized_bytes_per_queryObject

Returns the value of attribute max_materialized_bytes_per_query.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def max_materialized_bytes_per_query
  @max_materialized_bytes_per_query
end

#max_object_bytes_per_queryObject

Returns the value of attribute max_object_bytes_per_query.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def max_object_bytes_per_query
  @max_object_bytes_per_query
end

#max_object_reads_per_queryObject

Returns the value of attribute max_object_reads_per_query.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def max_object_reads_per_query
  @max_object_reads_per_query
end

#min_byte_reduction_fractionObject

Returns the value of attribute min_byte_reduction_fraction.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def min_byte_reduction_fraction
  @min_byte_reduction_fraction
end

#min_hit_overlap_fractionObject

Returns the value of attribute min_hit_overlap_fraction.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def min_hit_overlap_fraction
  @min_hit_overlap_fraction
end

#min_recall_at_1Object

Returns the value of attribute min_recall_at_1.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def min_recall_at_1
  @min_recall_at_1
end

#min_recall_at_10Object

Returns the value of attribute min_recall_at_10.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def min_recall_at_10
  @min_recall_at_10
end

#min_recall_at_100Object

Returns the value of attribute min_recall_at_100.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def min_recall_at_100
  @min_recall_at_100
end

#nameObject

Returns the value of attribute name.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def name
  @name
end

#require_benchmarkObject

Returns the value of attribute require_benchmark.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def require_benchmark
  @require_benchmark
end

#require_exact_verificationObject

Returns the value of attribute require_exact_verification.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def require_exact_verification
  @require_exact_verification
end

#require_routingObject

Returns the value of attribute require_routing.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def require_routing
  @require_routing
end

#require_zero_materializationObject

Returns the value of attribute require_zero_materialization.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def require_zero_materialization
  @require_zero_materialization
end

#workloadObject

Returns the value of attribute workload.



32
33
34
# File 'lib/rafflesia/cache/serverless_workload_profile.rb', line 32

def workload
  @workload
end