You are viewing documentation for version 3 of the AWS SDK for Ruby. Version 2 documentation can be found here.

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

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-dynamodb/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:



6220
6221
6222
6223
6224
6225
6226
6227
# File 'gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/types.rb', line 6220

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.



6220
6221
6222
6223
6224
6225
6226
6227
# File 'gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/types.rb', line 6220

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.



6220
6221
6222
6223
6224
6225
6226
6227
# File 'gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/types.rb', line 6220

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.

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.



6220
6221
6222
6223
6224
6225
6226
6227
# File 'gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/types.rb', line 6220

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)


6220
6221
6222
6223
6224
6225
6226
6227
# File 'gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/types.rb', line 6220

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