Interface CfnGlobalTable.IReplicaSpecificationProperty
Defines settings specific to a single replica of a global table.
Namespace: Amazon.CDK.AWS.DynamoDB
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public interface CfnGlobalTable.IReplicaSpecificationProperty
Syntax (vb)
Public Interface CfnGlobalTable.IReplicaSpecificationProperty
Remarks
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 replicaSpecificationProperty = 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"
} }
};
Synopsis
Properties
ContributorInsightsSpecification | The settings used to enable or disable CloudWatch Contributor Insights for the specified replica. |
DeletionProtectionEnabled | Determines if a replica is protected from deletion. |
GlobalSecondaryIndexes | Defines additional settings for the global secondary indexes of this replica. |
KinesisStreamSpecification | Defines the Kinesis Data Streams configuration for the specified replica. |
PointInTimeRecoverySpecification | The settings used to enable point in time recovery. |
ReadOnDemandThroughputSettings | Sets read request settings for the replica table. |
ReadProvisionedThroughputSettings | Defines read capacity settings for the replica table. |
Region | The region in which this replica exists. |
ReplicaStreamSpecification | Represents the DynamoDB Streams configuration for a global table replica. |
ResourcePolicy | A resource-based policy document that contains permissions to add to the specified replica of a DynamoDB global table. |
SseSpecification | Allows you to specify a customer-managed key for the replica. |
TableClass | The table class of the specified table. |
Tags | An array of key-value pairs to apply to this replica. |
Properties
ContributorInsightsSpecification
The settings used to enable or disable CloudWatch Contributor Insights for the specified replica.
object? ContributorInsightsSpecification { get; }
Property Value
Remarks
When not specified, defaults to contributor insights disabled for the replica.
DeletionProtectionEnabled
Determines if a replica is protected from deletion.
object? DeletionProtectionEnabled { get; }
Property Value
Remarks
When enabled, the table cannot be deleted by any user or process. This setting is disabled by default. For more information, see Using deletion protection in the Amazon DynamoDB Developer Guide .
GlobalSecondaryIndexes
Defines additional settings for the global secondary indexes of this replica.
object? GlobalSecondaryIndexes { get; }
Property Value
Remarks
KinesisStreamSpecification
Defines the Kinesis Data Streams configuration for the specified replica.
object? KinesisStreamSpecification { get; }
Property Value
Remarks
PointInTimeRecoverySpecification
The settings used to enable point in time recovery.
object? PointInTimeRecoverySpecification { get; }
Property Value
Remarks
When not specified, defaults to point in time recovery disabled for the replica.
ReadOnDemandThroughputSettings
Sets read request settings for the replica table.
object? ReadOnDemandThroughputSettings { get; }
Property Value
Remarks
ReadProvisionedThroughputSettings
Defines read capacity settings for the replica table.
object? ReadProvisionedThroughputSettings { get; }
Property Value
Remarks
Region
The region in which this replica exists.
string Region { get; }
Property Value
Remarks
ReplicaStreamSpecification
Represents the DynamoDB Streams configuration for a global table replica.
object? ReplicaStreamSpecification { get; }
Property Value
Remarks
ResourcePolicy
A resource-based policy document that contains permissions to add to the specified replica of a DynamoDB global table.
object? ResourcePolicy { get; }
Property Value
Remarks
Resource-based policies let you define access permissions by specifying who has access to each resource, and the actions they are allowed to perform on each resource.
In a CloudFormation template, you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to DynamoDB . For more information about resource-based policies, see Using resource-based policies for DynamoDB and Resource-based policy examples .
SseSpecification
Allows you to specify a customer-managed key for the replica.
object? SseSpecification { get; }
Property Value
Remarks
When using customer-managed keys for server-side encryption, this property must have a value in all replicas.
TableClass
The table class of the specified table.
string? TableClass { get; }
Property Value
Remarks
Valid values are STANDARD
and STANDARD_INFREQUENT_ACCESS
.
Tags
An array of key-value pairs to apply to this replica.
ICfnTag[]? Tags { get; }
Property Value
ICfnTag[]