Class: Aws::DynamoDB::Types::UpdateTableInput

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-dynamodb/types.rb

Overview

Note:

When making an API call, you may pass UpdateTableInput data as a hash:

{
  attribute_definitions: [
    {
      attribute_name: "KeySchemaAttributeName", # required
      attribute_type: "S", # required, accepts S, N, B
    },
  ],
  table_name: "TableName", # required
  provisioned_throughput: {
    read_capacity_units: 1, # required
    write_capacity_units: 1, # required
  },
  global_secondary_index_updates: [
    {
      update: {
        index_name: "IndexName", # required
        provisioned_throughput: { # required
          read_capacity_units: 1, # required
          write_capacity_units: 1, # required
        },
      },
      create: {
        index_name: "IndexName", # required
        key_schema: [ # required
          {
            attribute_name: "KeySchemaAttributeName", # required
            key_type: "HASH", # required, accepts HASH, RANGE
          },
        ],
        projection: { # required
          projection_type: "ALL", # accepts ALL, KEYS_ONLY, INCLUDE
          non_key_attributes: ["NonKeyAttributeName"],
        },
        provisioned_throughput: { # required
          read_capacity_units: 1, # required
          write_capacity_units: 1, # required
        },
      },
      delete: {
        index_name: "IndexName", # required
      },
    },
  ],
  stream_specification: {
    stream_enabled: false,
    stream_view_type: "NEW_IMAGE", # accepts NEW_IMAGE, OLD_IMAGE, NEW_AND_OLD_IMAGES, KEYS_ONLY
  },
}

Represents the input of an ‘UpdateTable` operation.

Instance Attribute Summary collapse

Instance Attribute Details

#attribute_definitionsArray<Types::AttributeDefinition>

An array of attributes that describe the key schema for the table and indexes. If you are adding a new global secondary index to the table, ‘AttributeDefinitions` must include the key element(s) of the new index.

Returns:



5334
5335
5336
5337
5338
5339
5340
5341
# File 'lib/aws-sdk-dynamodb/types.rb', line 5334

class UpdateTableInput < Struct.new(
  :attribute_definitions,
  :table_name,
  :provisioned_throughput,
  :global_secondary_index_updates,
  :stream_specification)
  include Aws::Structure
end

#global_secondary_index_updatesArray<Types::GlobalSecondaryIndexUpdate>

An array of one or more global secondary indexes for the table. For each index in the array, you can request one action:

  • ‘Create` - add a new global secondary index to the table.

  • ‘Update` - modify the provisioned throughput settings of an existing global secondary index.

  • ‘Delete` - remove a global secondary index from the table.

For more information, see [Managing Global Secondary Indexes] in the *Amazon DynamoDB Developer Guide*.

[1]: docs.aws.amazon.com/amazondynamodb/latest/developerguide/GSI.OnlineOps.html



5334
5335
5336
5337
5338
5339
5340
5341
# File 'lib/aws-sdk-dynamodb/types.rb', line 5334

class UpdateTableInput < Struct.new(
  :attribute_definitions,
  :table_name,
  :provisioned_throughput,
  :global_secondary_index_updates,
  :stream_specification)
  include Aws::Structure
end

#provisioned_throughputTypes::ProvisionedThroughput

The new provisioned throughput settings for the specified table or index.



5334
5335
5336
5337
5338
5339
5340
5341
# File 'lib/aws-sdk-dynamodb/types.rb', line 5334

class UpdateTableInput < Struct.new(
  :attribute_definitions,
  :table_name,
  :provisioned_throughput,
  :global_secondary_index_updates,
  :stream_specification)
  include Aws::Structure
end

#stream_specificationTypes::StreamSpecification

Represents the DynamoDB Streams configuration for the table.

<note markdown=“1”> You will receive a ‘ResourceInUseException` if you attempt to enable a stream on a table that already has a stream, or if you attempt to disable a stream on a table which does not have a stream.

</note>


5334
5335
5336
5337
5338
5339
5340
5341
# File 'lib/aws-sdk-dynamodb/types.rb', line 5334

class UpdateTableInput < Struct.new(
  :attribute_definitions,
  :table_name,
  :provisioned_throughput,
  :global_secondary_index_updates,
  :stream_specification)
  include Aws::Structure
end

#table_nameString

The name of the table to be updated.

Returns:

  • (String)


5334
5335
5336
5337
5338
5339
5340
5341
# File 'lib/aws-sdk-dynamodb/types.rb', line 5334

class UpdateTableInput < Struct.new(
  :attribute_definitions,
  :table_name,
  :provisioned_throughput,
  :global_secondary_index_updates,
  :stream_specification)
  include Aws::Structure
end