Show / Hide Table of Contents

Class CfnGlobalTable

The AWS::DynamoDB::GlobalTable resource enables you to create and manage a Version 2019.11.21 global table. This resource cannot be used to create or manage a Version 2017.11.29 global table. For more information, see Global tables .

Inheritance
object
CfnElement
CfnRefElement
CfnResource
CfnGlobalTable
Implements
IInspectable
IGlobalTableRef
IConstruct
IDependable
IEnvironmentAware
Inherited Members
CfnResource.IsCfnResource(object)
CfnResource.AddDeletionOverride(string)
CfnResource.AddDependency(CfnResource)
CfnResource.AddDependsOn(CfnResource)
CfnResource.AddMetadata(string, object)
CfnResource.AddOverride(string, object)
CfnResource.AddPropertyDeletionOverride(string)
CfnResource.AddPropertyOverride(string, object)
CfnResource.ApplyRemovalPolicy(RemovalPolicy?, IRemovalPolicyOptions)
CfnResource.GetAtt(string, ResolutionTypeHint?)
CfnResource.GetMetadata(string)
CfnResource.ObtainDependencies()
CfnResource.ObtainResourceDependencies()
CfnResource.RemoveDependency(CfnResource)
CfnResource.ReplaceDependency(CfnResource, CfnResource)
CfnResource.ShouldSynthesize()
CfnResource.ToString()
CfnResource.ValidateProperties(object)
CfnResource.CfnOptions
CfnResource.CfnResourceType
CfnResource.Env
CfnResource.UpdatedProperites
CfnResource.UpdatedProperties
CfnRefElement.Ref
CfnElement.IsCfnElement(object)
CfnElement.OverrideLogicalId(string)
CfnElement.CreationStack
CfnElement.LogicalId
CfnElement.Stack
Namespace: Amazon.CDK.AWS.DynamoDB
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnGlobalTable : CfnResource, IInspectable, IGlobalTableRef, IConstruct, IDependable, IEnvironmentAware
Syntax (vb)
Public Class CfnGlobalTable Inherits CfnResource Implements IInspectable, IGlobalTableRef, IConstruct, IDependable, IEnvironmentAware
Remarks
You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>

You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

You should be aware of the following behaviors when working with DynamoDB global tables.

    See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

    CloudformationResource: AWS::DynamoDB::GlobalTable

    ExampleMetadata: fixture=_generated

    Examples
    // The code below shows an example of how to instantiate this type.
                 // The values are placeholders you should change.
                 using Amazon.CDK.AWS.DynamoDB;
    
                 var policyDocument;
    
                 var cfnGlobalTable = new CfnGlobalTable(this, "MyCfnGlobalTable", new CfnGlobalTableProps {
                     AttributeDefinitions = new [] { new AttributeDefinitionProperty {
                         AttributeName = "attributeName",
                         AttributeType = "attributeType"
                     } },
                     KeySchema = new [] { new KeySchemaProperty {
                         AttributeName = "attributeName",
                         KeyType = "keyType"
                     } },
                     Replicas = new [] { new ReplicaSpecificationProperty {
                         Region = "region",
    
                         // the properties below are optional
                         ContributorInsightsSpecification = new ContributorInsightsSpecificationProperty {
                             Enabled = false,
    
                             // the properties below are optional
                             Mode = "mode"
                         },
                         DeletionProtectionEnabled = false,
                         GlobalSecondaryIndexes = new [] { new ReplicaGlobalSecondaryIndexSpecificationProperty {
                             IndexName = "indexName",
    
                             // the properties below are optional
                             ContributorInsightsSpecification = new ContributorInsightsSpecificationProperty {
                                 Enabled = false,
    
                                 // the properties below are optional
                                 Mode = "mode"
                             },
                             ReadOnDemandThroughputSettings = new ReadOnDemandThroughputSettingsProperty {
                                 MaxReadRequestUnits = 123
                             },
                             ReadProvisionedThroughputSettings = new ReadProvisionedThroughputSettingsProperty {
                                 ReadCapacityAutoScalingSettings = new CapacityAutoScalingSettingsProperty {
                                     MaxCapacity = 123,
                                     MinCapacity = 123,
                                     TargetTrackingScalingPolicyConfiguration = new TargetTrackingScalingPolicyConfigurationProperty {
                                         TargetValue = 123,
    
                                         // the properties below are optional
                                         DisableScaleIn = false,
                                         ScaleInCooldown = 123,
                                         ScaleOutCooldown = 123
                                     },
    
                                     // the properties below are optional
                                     SeedCapacity = 123
                                 },
                                 ReadCapacityUnits = 123
                             }
                         } },
                         KinesisStreamSpecification = new KinesisStreamSpecificationProperty {
                             StreamArn = "streamArn",
    
                             // the properties below are optional
                             ApproximateCreationDateTimePrecision = "approximateCreationDateTimePrecision"
                         },
                         PointInTimeRecoverySpecification = new PointInTimeRecoverySpecificationProperty {
                             PointInTimeRecoveryEnabled = false,
                             RecoveryPeriodInDays = 123
                         },
                         ReadOnDemandThroughputSettings = new ReadOnDemandThroughputSettingsProperty {
                             MaxReadRequestUnits = 123
                         },
                         ReadProvisionedThroughputSettings = new ReadProvisionedThroughputSettingsProperty {
                             ReadCapacityAutoScalingSettings = new CapacityAutoScalingSettingsProperty {
                                 MaxCapacity = 123,
                                 MinCapacity = 123,
                                 TargetTrackingScalingPolicyConfiguration = new TargetTrackingScalingPolicyConfigurationProperty {
                                     TargetValue = 123,
    
                                     // the properties below are optional
                                     DisableScaleIn = false,
                                     ScaleInCooldown = 123,
                                     ScaleOutCooldown = 123
                                 },
    
                                 // the properties below are optional
                                 SeedCapacity = 123
                             },
                             ReadCapacityUnits = 123
                         },
                         ReplicaStreamSpecification = new ReplicaStreamSpecificationProperty {
                             ResourcePolicy = new ResourcePolicyProperty {
                                 PolicyDocument = policyDocument
                             }
                         },
                         ResourcePolicy = new ResourcePolicyProperty {
                             PolicyDocument = policyDocument
                         },
                         SseSpecification = new ReplicaSSESpecificationProperty {
                             KmsMasterKeyId = "kmsMasterKeyId"
                         },
                         TableClass = "tableClass",
                         Tags = new [] { new CfnTag {
                             Key = "key",
                             Value = "value"
                         } }
                     } },
    
                     // the properties below are optional
                     BillingMode = "billingMode",
                     GlobalSecondaryIndexes = new [] { new GlobalSecondaryIndexProperty {
                         IndexName = "indexName",
                         KeySchema = new [] { new KeySchemaProperty {
                             AttributeName = "attributeName",
                             KeyType = "keyType"
                         } },
                         Projection = new ProjectionProperty {
                             NonKeyAttributes = new [] { "nonKeyAttributes" },
                             ProjectionType = "projectionType"
                         },
    
                         // the properties below are optional
                         WarmThroughput = new WarmThroughputProperty {
                             ReadUnitsPerSecond = 123,
                             WriteUnitsPerSecond = 123
                         },
                         WriteOnDemandThroughputSettings = new WriteOnDemandThroughputSettingsProperty {
                             MaxWriteRequestUnits = 123
                         },
                         WriteProvisionedThroughputSettings = new WriteProvisionedThroughputSettingsProperty {
                             WriteCapacityAutoScalingSettings = new CapacityAutoScalingSettingsProperty {
                                 MaxCapacity = 123,
                                 MinCapacity = 123,
                                 TargetTrackingScalingPolicyConfiguration = new TargetTrackingScalingPolicyConfigurationProperty {
                                     TargetValue = 123,
    
                                     // the properties below are optional
                                     DisableScaleIn = false,
                                     ScaleInCooldown = 123,
                                     ScaleOutCooldown = 123
                                 },
    
                                 // the properties below are optional
                                 SeedCapacity = 123
                             }
                         }
                     } },
                     GlobalTableWitnesses = new [] { new GlobalTableWitnessProperty {
                         Region = "region"
                     } },
                     LocalSecondaryIndexes = new [] { new LocalSecondaryIndexProperty {
                         IndexName = "indexName",
                         KeySchema = new [] { new KeySchemaProperty {
                             AttributeName = "attributeName",
                             KeyType = "keyType"
                         } },
                         Projection = new ProjectionProperty {
                             NonKeyAttributes = new [] { "nonKeyAttributes" },
                             ProjectionType = "projectionType"
                         }
                     } },
                     MultiRegionConsistency = "multiRegionConsistency",
                     SseSpecification = new SSESpecificationProperty {
                         SseEnabled = false,
    
                         // the properties below are optional
                         SseType = "sseType"
                     },
                     StreamSpecification = new StreamSpecificationProperty {
                         StreamViewType = "streamViewType"
                     },
                     TableName = "tableName",
                     TimeToLiveSpecification = new TimeToLiveSpecificationProperty {
                         Enabled = false,
    
                         // the properties below are optional
                         AttributeName = "attributeName"
                     },
                     WarmThroughput = new WarmThroughputProperty {
                         ReadUnitsPerSecond = 123,
                         WriteUnitsPerSecond = 123
                     },
                     WriteOnDemandThroughputSettings = new WriteOnDemandThroughputSettingsProperty {
                         MaxWriteRequestUnits = 123
                     },
                     WriteProvisionedThroughputSettings = new WriteProvisionedThroughputSettingsProperty {
                         WriteCapacityAutoScalingSettings = new CapacityAutoScalingSettingsProperty {
                             MaxCapacity = 123,
                             MinCapacity = 123,
                             TargetTrackingScalingPolicyConfiguration = new TargetTrackingScalingPolicyConfigurationProperty {
                                 TargetValue = 123,
    
                                 // the properties below are optional
                                 DisableScaleIn = false,
                                 ScaleInCooldown = 123,
                                 ScaleOutCooldown = 123
                             },
    
                             // the properties below are optional
                             SeedCapacity = 123
                         }
                     }
                 });

    Synopsis

    Constructors

    CfnGlobalTable(Construct, string, ICfnGlobalTableProps)

    Create a new AWS::DynamoDB::GlobalTable.

    Properties

    AttrArn

    The Amazon Resource Name (ARN) of the DynamoDB table, such as arn:aws:dynamodb:us-east-2:123456789012:table/myDynamoDBTable .

    AttrStreamArn

    The ARN of the DynamoDB stream, such as arn:aws:dynamodb:us-east-1:123456789012:table/testddbstack-myDynamoDBTable-012A1SL7SMP5Q/stream/2015-11-30T20:10:00.000 . The StreamArn returned is that of the replica in the region the stack is deployed to.

    AttrTableId

    Unique identifier for the table, such as a123b456-01ab-23cd-123a-111222aaabbb .

    AttributeDefinitions

    A list of attributes that describe the key schema for the global table and indexes.

    BillingMode

    Specifies how you are charged for read and write throughput and how you manage capacity.

    CFN_RESOURCE_TYPE_NAME

    The CloudFormation resource type name for this resource class.

    CfnProperties

    The AWS::DynamoDB::GlobalTable resource enables you to create and manage a Version 2019.11.21 global table. This resource cannot be used to create or manage a Version 2017.11.29 global table. For more information, see Global tables .

    GlobalSecondaryIndexes

    Global secondary indexes to be created on the global table.

    GlobalTableRef

    A reference to a GlobalTable resource.

    GlobalTableWitnesses

    The list of witnesses of the MRSC global table.

    KeySchema

    Specifies the attributes that make up the primary key for the table.

    LocalSecondaryIndexes

    Local secondary indexes to be created on the table.

    MultiRegionConsistency

    Specifies the consistency mode for a new global table.

    Replicas

    Specifies the list of replicas for your global table.

    SseSpecification

    Specifies the settings to enable server-side encryption.

    StreamSpecification

    Specifies the streams settings on your global table.

    TableName

    A name for the global table.

    TimeToLiveSpecification

    Specifies the time to live (TTL) settings for the table.

    WarmThroughput

    Provides visibility into the number of read and write operations your table or secondary index can instantaneously support.

    WriteOnDemandThroughputSettings

    Sets the write request settings for a global table or a global secondary index.

    WriteProvisionedThroughputSettings

    Specifies an auto scaling policy for write capacity.

    Methods

    ArnForGlobalTable(IGlobalTableRef)

    The AWS::DynamoDB::GlobalTable resource enables you to create and manage a Version 2019.11.21 global table. This resource cannot be used to create or manage a Version 2017.11.29 global table. For more information, see Global tables .

    Inspect(TreeInspector)

    Examines the CloudFormation resource and discloses attributes.

    IsCfnGlobalTable(object)

    Checks whether the given object is a CfnGlobalTable.

    RenderProperties(IDictionary<string, object>)

    The AWS::DynamoDB::GlobalTable resource enables you to create and manage a Version 2019.11.21 global table. This resource cannot be used to create or manage a Version 2017.11.29 global table. For more information, see Global tables .

    Constructors

    CfnGlobalTable(Construct, string, ICfnGlobalTableProps)

    Create a new AWS::DynamoDB::GlobalTable.

    public CfnGlobalTable(Construct scope, string id, ICfnGlobalTableProps props)
    Parameters
    scope Construct

    Scope in which this resource is defined.

    id string

    Construct identifier for this resource (unique in its scope).

    props ICfnGlobalTableProps

    Resource properties.

    Remarks
    You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
    

    You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

    You should be aware of the following behaviors when working with DynamoDB global tables.

      See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

      CloudformationResource: AWS::DynamoDB::GlobalTable

      ExampleMetadata: fixture=_generated

      Properties

      AttrArn

      The Amazon Resource Name (ARN) of the DynamoDB table, such as arn:aws:dynamodb:us-east-2:123456789012:table/myDynamoDBTable .

      public virtual string AttrArn { get; }
      Property Value

      string

      Remarks

      The ARN returned is that of the replica in the region the stack is deployed to.

      CloudformationAttribute: Arn

      AttrStreamArn

      The ARN of the DynamoDB stream, such as arn:aws:dynamodb:us-east-1:123456789012:table/testddbstack-myDynamoDBTable-012A1SL7SMP5Q/stream/2015-11-30T20:10:00.000 . The StreamArn returned is that of the replica in the region the stack is deployed to.

      public virtual string AttrStreamArn { get; }
      Property Value

      string

      Remarks
      You must specify the <code>StreamSpecification</code> property to use this attribute.
      

      CloudformationAttribute: StreamArn

      AttrTableId

      Unique identifier for the table, such as a123b456-01ab-23cd-123a-111222aaabbb .

      public virtual string AttrTableId { get; }
      Property Value

      string

      Remarks

      The TableId returned is that of the replica in the region the stack is deployed to.

      CloudformationAttribute: TableId

      AttributeDefinitions

      A list of attributes that describe the key schema for the global table and indexes.

      public virtual object AttributeDefinitions { get; set; }
      Property Value

      object

      Remarks

      Type union: either IResolvable or (either IResolvable or CfnGlobalTable.IAttributeDefinitionProperty)[]

      BillingMode

      Specifies how you are charged for read and write throughput and how you manage capacity.

      public virtual string? BillingMode { get; set; }
      Property Value

      string

      Remarks

      Valid values are:.

      CFN_RESOURCE_TYPE_NAME

      The CloudFormation resource type name for this resource class.

      public static string CFN_RESOURCE_TYPE_NAME { get; }
      Property Value

      string

      Remarks
      You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
      

      You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

      You should be aware of the following behaviors when working with DynamoDB global tables.

        See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

        CloudformationResource: AWS::DynamoDB::GlobalTable

        ExampleMetadata: fixture=_generated

        CfnProperties

        The AWS::DynamoDB::GlobalTable resource enables you to create and manage a Version 2019.11.21 global table. This resource cannot be used to create or manage a Version 2017.11.29 global table. For more information, see Global tables .

        protected override IDictionary<string, object> CfnProperties { get; }
        Property Value

        IDictionary<string, object>

        Overrides
        CfnResource.CfnProperties
        Remarks
        You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
        

        You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

        You should be aware of the following behaviors when working with DynamoDB global tables.

          See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

          CloudformationResource: AWS::DynamoDB::GlobalTable

          ExampleMetadata: fixture=_generated

          GlobalSecondaryIndexes

          Global secondary indexes to be created on the global table.

          public virtual object? GlobalSecondaryIndexes { get; set; }
          Property Value

          object

          Remarks

          Type union: either IResolvable or (either IResolvable or CfnGlobalTable.IGlobalSecondaryIndexProperty)[]

          GlobalTableRef

          A reference to a GlobalTable resource.

          public virtual IGlobalTableReference GlobalTableRef { get; }
          Property Value

          IGlobalTableReference

          Remarks
          You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
          

          You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

          You should be aware of the following behaviors when working with DynamoDB global tables.

            See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

            CloudformationResource: AWS::DynamoDB::GlobalTable

            ExampleMetadata: fixture=_generated

            GlobalTableWitnesses

            The list of witnesses of the MRSC global table.

            public virtual object? GlobalTableWitnesses { get; set; }
            Property Value

            object

            Remarks

            Type union: either IResolvable or (either IResolvable or CfnGlobalTable.IGlobalTableWitnessProperty)[]

            KeySchema

            Specifies the attributes that make up the primary key for the table.

            public virtual object KeySchema { get; set; }
            Property Value

            object

            Remarks

            Type union: either IResolvable or (either IResolvable or CfnGlobalTable.IKeySchemaProperty)[]

            LocalSecondaryIndexes

            Local secondary indexes to be created on the table.

            public virtual object? LocalSecondaryIndexes { get; set; }
            Property Value

            object

            Remarks

            Type union: either IResolvable or (either IResolvable or CfnGlobalTable.ILocalSecondaryIndexProperty)[]

            MultiRegionConsistency

            Specifies the consistency mode for a new global table.

            public virtual string? MultiRegionConsistency { get; set; }
            Property Value

            string

            Remarks
            You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
            

            You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

            You should be aware of the following behaviors when working with DynamoDB global tables.

              See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

              CloudformationResource: AWS::DynamoDB::GlobalTable

              ExampleMetadata: fixture=_generated

              Replicas

              Specifies the list of replicas for your global table.

              public virtual object Replicas { get; set; }
              Property Value

              object

              Remarks

              Type union: either IResolvable or (either IResolvable or CfnGlobalTable.IReplicaSpecificationProperty)[]

              SseSpecification

              Specifies the settings to enable server-side encryption.

              public virtual object? SseSpecification { get; set; }
              Property Value

              object

              Remarks

              Type union: either IResolvable or CfnGlobalTable.ISSESpecificationProperty

              StreamSpecification

              Specifies the streams settings on your global table.

              public virtual object? StreamSpecification { get; set; }
              Property Value

              object

              Remarks

              Type union: either IResolvable or CfnGlobalTable.IStreamSpecificationProperty

              TableName

              A name for the global table.

              public virtual string? TableName { get; set; }
              Property Value

              string

              Remarks
              You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
              

              You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

              You should be aware of the following behaviors when working with DynamoDB global tables.

                See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

                CloudformationResource: AWS::DynamoDB::GlobalTable

                ExampleMetadata: fixture=_generated

                TimeToLiveSpecification

                Specifies the time to live (TTL) settings for the table.

                public virtual object? TimeToLiveSpecification { get; set; }
                Property Value

                object

                Remarks

                Type union: either IResolvable or CfnGlobalTable.ITimeToLiveSpecificationProperty

                WarmThroughput

                Provides visibility into the number of read and write operations your table or secondary index can instantaneously support.

                public virtual object? WarmThroughput { get; set; }
                Property Value

                object

                Remarks

                Type union: either IResolvable or CfnGlobalTable.IWarmThroughputProperty

                WriteOnDemandThroughputSettings

                Sets the write request settings for a global table or a global secondary index.

                public virtual object? WriteOnDemandThroughputSettings { get; set; }
                Property Value

                object

                Remarks

                Type union: either IResolvable or CfnGlobalTable.IWriteOnDemandThroughputSettingsProperty

                WriteProvisionedThroughputSettings

                Specifies an auto scaling policy for write capacity.

                public virtual object? WriteProvisionedThroughputSettings { get; set; }
                Property Value

                object

                Remarks

                Type union: either IResolvable or CfnGlobalTable.IWriteProvisionedThroughputSettingsProperty

                Methods

                ArnForGlobalTable(IGlobalTableRef)

                The AWS::DynamoDB::GlobalTable resource enables you to create and manage a Version 2019.11.21 global table. This resource cannot be used to create or manage a Version 2017.11.29 global table. For more information, see Global tables .

                public static string ArnForGlobalTable(IGlobalTableRef resource)
                Parameters
                resource IGlobalTableRef
                Returns

                string

                Remarks
                You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
                

                You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

                You should be aware of the following behaviors when working with DynamoDB global tables.

                  See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

                  CloudformationResource: AWS::DynamoDB::GlobalTable

                  ExampleMetadata: fixture=_generated

                  Examples
                  // The code below shows an example of how to instantiate this type.
                               // The values are placeholders you should change.
                               using Amazon.CDK.AWS.DynamoDB;
                  
                               var policyDocument;
                  
                               var cfnGlobalTable = new CfnGlobalTable(this, "MyCfnGlobalTable", new CfnGlobalTableProps {
                                   AttributeDefinitions = new [] { new AttributeDefinitionProperty {
                                       AttributeName = "attributeName",
                                       AttributeType = "attributeType"
                                   } },
                                   KeySchema = new [] { new KeySchemaProperty {
                                       AttributeName = "attributeName",
                                       KeyType = "keyType"
                                   } },
                                   Replicas = new [] { new ReplicaSpecificationProperty {
                                       Region = "region",
                  
                                       // the properties below are optional
                                       ContributorInsightsSpecification = new ContributorInsightsSpecificationProperty {
                                           Enabled = false,
                  
                                           // the properties below are optional
                                           Mode = "mode"
                                       },
                                       DeletionProtectionEnabled = false,
                                       GlobalSecondaryIndexes = new [] { new ReplicaGlobalSecondaryIndexSpecificationProperty {
                                           IndexName = "indexName",
                  
                                           // the properties below are optional
                                           ContributorInsightsSpecification = new ContributorInsightsSpecificationProperty {
                                               Enabled = false,
                  
                                               // the properties below are optional
                                               Mode = "mode"
                                           },
                                           ReadOnDemandThroughputSettings = new ReadOnDemandThroughputSettingsProperty {
                                               MaxReadRequestUnits = 123
                                           },
                                           ReadProvisionedThroughputSettings = new ReadProvisionedThroughputSettingsProperty {
                                               ReadCapacityAutoScalingSettings = new CapacityAutoScalingSettingsProperty {
                                                   MaxCapacity = 123,
                                                   MinCapacity = 123,
                                                   TargetTrackingScalingPolicyConfiguration = new TargetTrackingScalingPolicyConfigurationProperty {
                                                       TargetValue = 123,
                  
                                                       // the properties below are optional
                                                       DisableScaleIn = false,
                                                       ScaleInCooldown = 123,
                                                       ScaleOutCooldown = 123
                                                   },
                  
                                                   // the properties below are optional
                                                   SeedCapacity = 123
                                               },
                                               ReadCapacityUnits = 123
                                           }
                                       } },
                                       KinesisStreamSpecification = new KinesisStreamSpecificationProperty {
                                           StreamArn = "streamArn",
                  
                                           // the properties below are optional
                                           ApproximateCreationDateTimePrecision = "approximateCreationDateTimePrecision"
                                       },
                                       PointInTimeRecoverySpecification = new PointInTimeRecoverySpecificationProperty {
                                           PointInTimeRecoveryEnabled = false,
                                           RecoveryPeriodInDays = 123
                                       },
                                       ReadOnDemandThroughputSettings = new ReadOnDemandThroughputSettingsProperty {
                                           MaxReadRequestUnits = 123
                                       },
                                       ReadProvisionedThroughputSettings = new ReadProvisionedThroughputSettingsProperty {
                                           ReadCapacityAutoScalingSettings = new CapacityAutoScalingSettingsProperty {
                                               MaxCapacity = 123,
                                               MinCapacity = 123,
                                               TargetTrackingScalingPolicyConfiguration = new TargetTrackingScalingPolicyConfigurationProperty {
                                                   TargetValue = 123,
                  
                                                   // the properties below are optional
                                                   DisableScaleIn = false,
                                                   ScaleInCooldown = 123,
                                                   ScaleOutCooldown = 123
                                               },
                  
                                               // the properties below are optional
                                               SeedCapacity = 123
                                           },
                                           ReadCapacityUnits = 123
                                       },
                                       ReplicaStreamSpecification = new ReplicaStreamSpecificationProperty {
                                           ResourcePolicy = new ResourcePolicyProperty {
                                               PolicyDocument = policyDocument
                                           }
                                       },
                                       ResourcePolicy = new ResourcePolicyProperty {
                                           PolicyDocument = policyDocument
                                       },
                                       SseSpecification = new ReplicaSSESpecificationProperty {
                                           KmsMasterKeyId = "kmsMasterKeyId"
                                       },
                                       TableClass = "tableClass",
                                       Tags = new [] { new CfnTag {
                                           Key = "key",
                                           Value = "value"
                                       } }
                                   } },
                  
                                   // the properties below are optional
                                   BillingMode = "billingMode",
                                   GlobalSecondaryIndexes = new [] { new GlobalSecondaryIndexProperty {
                                       IndexName = "indexName",
                                       KeySchema = new [] { new KeySchemaProperty {
                                           AttributeName = "attributeName",
                                           KeyType = "keyType"
                                       } },
                                       Projection = new ProjectionProperty {
                                           NonKeyAttributes = new [] { "nonKeyAttributes" },
                                           ProjectionType = "projectionType"
                                       },
                  
                                       // the properties below are optional
                                       WarmThroughput = new WarmThroughputProperty {
                                           ReadUnitsPerSecond = 123,
                                           WriteUnitsPerSecond = 123
                                       },
                                       WriteOnDemandThroughputSettings = new WriteOnDemandThroughputSettingsProperty {
                                           MaxWriteRequestUnits = 123
                                       },
                                       WriteProvisionedThroughputSettings = new WriteProvisionedThroughputSettingsProperty {
                                           WriteCapacityAutoScalingSettings = new CapacityAutoScalingSettingsProperty {
                                               MaxCapacity = 123,
                                               MinCapacity = 123,
                                               TargetTrackingScalingPolicyConfiguration = new TargetTrackingScalingPolicyConfigurationProperty {
                                                   TargetValue = 123,
                  
                                                   // the properties below are optional
                                                   DisableScaleIn = false,
                                                   ScaleInCooldown = 123,
                                                   ScaleOutCooldown = 123
                                               },
                  
                                               // the properties below are optional
                                               SeedCapacity = 123
                                           }
                                       }
                                   } },
                                   GlobalTableWitnesses = new [] { new GlobalTableWitnessProperty {
                                       Region = "region"
                                   } },
                                   LocalSecondaryIndexes = new [] { new LocalSecondaryIndexProperty {
                                       IndexName = "indexName",
                                       KeySchema = new [] { new KeySchemaProperty {
                                           AttributeName = "attributeName",
                                           KeyType = "keyType"
                                       } },
                                       Projection = new ProjectionProperty {
                                           NonKeyAttributes = new [] { "nonKeyAttributes" },
                                           ProjectionType = "projectionType"
                                       }
                                   } },
                                   MultiRegionConsistency = "multiRegionConsistency",
                                   SseSpecification = new SSESpecificationProperty {
                                       SseEnabled = false,
                  
                                       // the properties below are optional
                                       SseType = "sseType"
                                   },
                                   StreamSpecification = new StreamSpecificationProperty {
                                       StreamViewType = "streamViewType"
                                   },
                                   TableName = "tableName",
                                   TimeToLiveSpecification = new TimeToLiveSpecificationProperty {
                                       Enabled = false,
                  
                                       // the properties below are optional
                                       AttributeName = "attributeName"
                                   },
                                   WarmThroughput = new WarmThroughputProperty {
                                       ReadUnitsPerSecond = 123,
                                       WriteUnitsPerSecond = 123
                                   },
                                   WriteOnDemandThroughputSettings = new WriteOnDemandThroughputSettingsProperty {
                                       MaxWriteRequestUnits = 123
                                   },
                                   WriteProvisionedThroughputSettings = new WriteProvisionedThroughputSettingsProperty {
                                       WriteCapacityAutoScalingSettings = new CapacityAutoScalingSettingsProperty {
                                           MaxCapacity = 123,
                                           MinCapacity = 123,
                                           TargetTrackingScalingPolicyConfiguration = new TargetTrackingScalingPolicyConfigurationProperty {
                                               TargetValue = 123,
                  
                                               // the properties below are optional
                                               DisableScaleIn = false,
                                               ScaleInCooldown = 123,
                                               ScaleOutCooldown = 123
                                           },
                  
                                           // the properties below are optional
                                           SeedCapacity = 123
                                       }
                                   }
                               });

                  Inspect(TreeInspector)

                  Examines the CloudFormation resource and discloses attributes.

                  public virtual void Inspect(TreeInspector inspector)
                  Parameters
                  inspector TreeInspector

                  tree inspector to collect and process attributes.

                  Remarks
                  You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
                  

                  You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

                  You should be aware of the following behaviors when working with DynamoDB global tables.

                    See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

                    CloudformationResource: AWS::DynamoDB::GlobalTable

                    ExampleMetadata: fixture=_generated

                    IsCfnGlobalTable(object)

                    Checks whether the given object is a CfnGlobalTable.

                    public static bool IsCfnGlobalTable(object x)
                    Parameters
                    x object
                    Returns

                    bool

                    Remarks
                    You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
                    

                    You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

                    You should be aware of the following behaviors when working with DynamoDB global tables.

                      See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

                      CloudformationResource: AWS::DynamoDB::GlobalTable

                      ExampleMetadata: fixture=_generated

                      RenderProperties(IDictionary<string, object>)

                      The AWS::DynamoDB::GlobalTable resource enables you to create and manage a Version 2019.11.21 global table. This resource cannot be used to create or manage a Version 2017.11.29 global table. For more information, see Global tables .

                      protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
                      Parameters
                      props IDictionary<string, object>
                      Returns

                      IDictionary<string, object>

                      Overrides
                      CfnResource.RenderProperties(IDictionary<string, object>)
                      Remarks
                      You cannot convert a resource of type <code>AWS::DynamoDB::Table</code> into a resource of type <code>AWS::DynamoDB::GlobalTable</code> by changing its type in your template. <em>Doing so might result in the deletion of your DynamoDB table.</em>
                      

                      You can instead use the GlobalTable resource to create a new table in a single Region. This will be billed the same as a single Region table. If you later update the stack to add other Regions then Global Tables pricing will apply.

                      You should be aware of the following behaviors when working with DynamoDB global tables.

                        See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html

                        CloudformationResource: AWS::DynamoDB::GlobalTable

                        ExampleMetadata: fixture=_generated

                        Implements

                        IInspectable
                        IGlobalTableRef
                        Constructs.IConstruct
                        Constructs.IDependable
                        IEnvironmentAware
                        Back to top Generated by DocFX