Class: AWSCDK::DynamoDB::AutoscaledCapacityOptions

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
dynamo_db/autoscaled_capacity_options.rb

Overview

Options used to configure autoscaled capacity.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(max_capacity:, min_capacity: nil, seed_capacity: nil, target_utilization_percent: nil) ⇒ AutoscaledCapacityOptions

Returns a new instance of AutoscaledCapacityOptions.

Parameters:

  • max_capacity (Numeric)

    The maximum allowable capacity.

  • min_capacity (Numeric, nil) (defaults to: nil)

    The minimum allowable capacity.

  • seed_capacity (Numeric, nil) (defaults to: nil)

    If you want to switch a table's billing mode from on-demand to provisioned or from provisioned to on-demand, you must specify a value for this property for each autoscaled resource.

  • target_utilization_percent (Numeric, nil) (defaults to: nil)

    The ratio of consumed capacity units to provisioned capacity units.



11
12
13
14
15
16
17
18
19
20
# File 'dynamo_db/autoscaled_capacity_options.rb', line 11

def initialize(max_capacity:, min_capacity: nil, seed_capacity: nil, target_utilization_percent: nil)
  @max_capacity = max_capacity
  Jsii::Type.check_type(@max_capacity, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "maxCapacity")
  @min_capacity = min_capacity
  Jsii::Type.check_type(@min_capacity, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "minCapacity") unless @min_capacity.nil?
  @seed_capacity = seed_capacity
  Jsii::Type.check_type(@seed_capacity, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "seedCapacity") unless @seed_capacity.nil?
  @target_utilization_percent = target_utilization_percent
  Jsii::Type.check_type(@target_utilization_percent, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "targetUtilizationPercent") unless @target_utilization_percent.nil?
end

Instance Attribute Details

#max_capacityNumeric (readonly)

The maximum allowable capacity.

Returns:

  • (Numeric)


25
26
27
# File 'dynamo_db/autoscaled_capacity_options.rb', line 25

def max_capacity
  @max_capacity
end

#min_capacityNumeric? (readonly)

Note:

Default: 1

The minimum allowable capacity.

Returns:

  • (Numeric, nil)


30
31
32
# File 'dynamo_db/autoscaled_capacity_options.rb', line 30

def min_capacity
  @min_capacity
end

#seed_capacityNumeric? (readonly)

Note:

Default: no seed capacity

If you want to switch a table's billing mode from on-demand to provisioned or from provisioned to on-demand, you must specify a value for this property for each autoscaled resource.

Returns:

  • (Numeric, nil)


35
36
37
# File 'dynamo_db/autoscaled_capacity_options.rb', line 35

def seed_capacity
  @seed_capacity
end

#target_utilization_percentNumeric? (readonly)

Note:

Default: 70

The ratio of consumed capacity units to provisioned capacity units.

Note: Target utilization percent cannot be less than 20 and cannot be greater than 90.

Returns:

  • (Numeric, nil)


43
44
45
# File 'dynamo_db/autoscaled_capacity_options.rb', line 43

def target_utilization_percent
  @target_utilization_percent
end

Class Method Details

.jsii_propertiesObject



45
46
47
48
49
50
51
52
# File 'dynamo_db/autoscaled_capacity_options.rb', line 45

def self.jsii_properties
  {
    :max_capacity => "maxCapacity",
    :min_capacity => "minCapacity",
    :seed_capacity => "seedCapacity",
    :target_utilization_percent => "targetUtilizationPercent",
  }
end

Instance Method Details

#to_jsiiObject



54
55
56
57
58
59
60
61
62
63
# File 'dynamo_db/autoscaled_capacity_options.rb', line 54

def to_jsii
  result = {}
  result.merge!({
    "maxCapacity" => @max_capacity,
    "minCapacity" => @min_capacity,
    "seedCapacity" => @seed_capacity,
    "targetUtilizationPercent" => @target_utilization_percent,
  })
  result.compact
end