line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
|
2
|
|
|
|
|
|
|
package Paws::DynamoDB::CreateTable; |
3
|
1
|
|
|
1
|
|
546
|
use Moose; |
|
1
|
|
|
1
|
|
3
|
|
|
1
|
|
|
|
|
8
|
|
|
1
|
|
|
|
|
671
|
|
|
1
|
|
|
|
|
4
|
|
|
1
|
|
|
|
|
12
|
|
4
|
|
|
|
|
|
|
has AttributeDefinitions => (is => 'ro', isa => 'ArrayRef[Paws::DynamoDB::AttributeDefinition]', required => 1); |
5
|
|
|
|
|
|
|
has GlobalSecondaryIndexes => (is => 'ro', isa => 'ArrayRef[Paws::DynamoDB::GlobalSecondaryIndex]'); |
6
|
|
|
|
|
|
|
has KeySchema => (is => 'ro', isa => 'ArrayRef[Paws::DynamoDB::KeySchemaElement]', required => 1); |
7
|
|
|
|
|
|
|
has LocalSecondaryIndexes => (is => 'ro', isa => 'ArrayRef[Paws::DynamoDB::LocalSecondaryIndex]'); |
8
|
|
|
|
|
|
|
has ProvisionedThroughput => (is => 'ro', isa => 'Paws::DynamoDB::ProvisionedThroughput', required => 1); |
9
|
|
|
|
|
|
|
has StreamSpecification => (is => 'ro', isa => 'Paws::DynamoDB::StreamSpecification'); |
10
|
|
|
|
|
|
|
has TableName => (is => 'ro', isa => 'Str', required => 1); |
11
|
|
|
|
|
|
|
|
12
|
1
|
|
|
1
|
|
7308
|
use MooseX::ClassAttribute; |
|
1
|
|
|
1
|
|
3
|
|
|
1
|
|
|
|
|
11
|
|
|
1
|
|
|
|
|
7380
|
|
|
1
|
|
|
|
|
3
|
|
|
1
|
|
|
|
|
9
|
|
13
|
|
|
|
|
|
|
|
14
|
|
|
|
|
|
|
class_has _api_call => (isa => 'Str', is => 'ro', default => 'CreateTable'); |
15
|
|
|
|
|
|
|
class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::DynamoDB::CreateTableOutput'); |
16
|
|
|
|
|
|
|
class_has _result_key => (isa => 'Str', is => 'ro'); |
17
|
|
|
|
|
|
|
1; |
18
|
|
|
|
|
|
|
|
19
|
|
|
|
|
|
|
### main pod documentation begin ### |
20
|
|
|
|
|
|
|
|
21
|
|
|
|
|
|
|
=head1 NAME |
22
|
|
|
|
|
|
|
|
23
|
|
|
|
|
|
|
Paws::DynamoDB::CreateTable - Arguments for method CreateTable on Paws::DynamoDB |
24
|
|
|
|
|
|
|
|
25
|
|
|
|
|
|
|
=head1 DESCRIPTION |
26
|
|
|
|
|
|
|
|
27
|
|
|
|
|
|
|
This class represents the parameters used for calling the method CreateTable on the |
28
|
|
|
|
|
|
|
Amazon DynamoDB service. Use the attributes of this class |
29
|
|
|
|
|
|
|
as arguments to method CreateTable. |
30
|
|
|
|
|
|
|
|
31
|
|
|
|
|
|
|
You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreateTable. |
32
|
|
|
|
|
|
|
|
33
|
|
|
|
|
|
|
As an example: |
34
|
|
|
|
|
|
|
|
35
|
|
|
|
|
|
|
$service_obj->CreateTable(Att1 => $value1, Att2 => $value2, ...); |
36
|
|
|
|
|
|
|
|
37
|
|
|
|
|
|
|
Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. |
38
|
|
|
|
|
|
|
|
39
|
|
|
|
|
|
|
=head1 ATTRIBUTES |
40
|
|
|
|
|
|
|
|
41
|
|
|
|
|
|
|
|
42
|
|
|
|
|
|
|
=head2 B<REQUIRED> AttributeDefinitions => ArrayRef[L<Paws::DynamoDB::AttributeDefinition>] |
43
|
|
|
|
|
|
|
|
44
|
|
|
|
|
|
|
An array of attributes that describe the key schema for the table and |
45
|
|
|
|
|
|
|
indexes. |
46
|
|
|
|
|
|
|
|
47
|
|
|
|
|
|
|
|
48
|
|
|
|
|
|
|
|
49
|
|
|
|
|
|
|
=head2 GlobalSecondaryIndexes => ArrayRef[L<Paws::DynamoDB::GlobalSecondaryIndex>] |
50
|
|
|
|
|
|
|
|
51
|
|
|
|
|
|
|
One or more global secondary indexes (the maximum is five) to be |
52
|
|
|
|
|
|
|
created on the table. Each global secondary index in the array includes |
53
|
|
|
|
|
|
|
the following: |
54
|
|
|
|
|
|
|
|
55
|
|
|
|
|
|
|
=over |
56
|
|
|
|
|
|
|
|
57
|
|
|
|
|
|
|
=item * |
58
|
|
|
|
|
|
|
|
59
|
|
|
|
|
|
|
C<IndexName> - The name of the global secondary index. Must be unique |
60
|
|
|
|
|
|
|
only for this table. |
61
|
|
|
|
|
|
|
|
62
|
|
|
|
|
|
|
=item * |
63
|
|
|
|
|
|
|
|
64
|
|
|
|
|
|
|
C<KeySchema> - Specifies the key schema for the global secondary index. |
65
|
|
|
|
|
|
|
|
66
|
|
|
|
|
|
|
=item * |
67
|
|
|
|
|
|
|
|
68
|
|
|
|
|
|
|
C<Projection> - Specifies attributes that are copied (projected) from |
69
|
|
|
|
|
|
|
the table into the index. These are in addition to the primary key |
70
|
|
|
|
|
|
|
attributes and index key attributes, which are automatically projected. |
71
|
|
|
|
|
|
|
Each attribute specification is composed of: |
72
|
|
|
|
|
|
|
|
73
|
|
|
|
|
|
|
=over |
74
|
|
|
|
|
|
|
|
75
|
|
|
|
|
|
|
=item * |
76
|
|
|
|
|
|
|
|
77
|
|
|
|
|
|
|
C<ProjectionType> - One of the following: |
78
|
|
|
|
|
|
|
|
79
|
|
|
|
|
|
|
=over |
80
|
|
|
|
|
|
|
|
81
|
|
|
|
|
|
|
=item * |
82
|
|
|
|
|
|
|
|
83
|
|
|
|
|
|
|
C<KEYS_ONLY> - Only the index and primary keys are projected into the |
84
|
|
|
|
|
|
|
index. |
85
|
|
|
|
|
|
|
|
86
|
|
|
|
|
|
|
=item * |
87
|
|
|
|
|
|
|
|
88
|
|
|
|
|
|
|
C<INCLUDE> - Only the specified table attributes are projected into the |
89
|
|
|
|
|
|
|
index. The list of projected attributes are in C<NonKeyAttributes>. |
90
|
|
|
|
|
|
|
|
91
|
|
|
|
|
|
|
=item * |
92
|
|
|
|
|
|
|
|
93
|
|
|
|
|
|
|
C<ALL> - All of the table attributes are projected into the index. |
94
|
|
|
|
|
|
|
|
95
|
|
|
|
|
|
|
=back |
96
|
|
|
|
|
|
|
|
97
|
|
|
|
|
|
|
=item * |
98
|
|
|
|
|
|
|
|
99
|
|
|
|
|
|
|
C<NonKeyAttributes> - A list of one or more non-key attribute names |
100
|
|
|
|
|
|
|
that are projected into the secondary index. The total count of |
101
|
|
|
|
|
|
|
attributes provided in C<NonKeyAttributes>, summed across all of the |
102
|
|
|
|
|
|
|
secondary indexes, must not exceed 20. If you project the same |
103
|
|
|
|
|
|
|
attribute into two different indexes, this counts as two distinct |
104
|
|
|
|
|
|
|
attributes when determining the total. |
105
|
|
|
|
|
|
|
|
106
|
|
|
|
|
|
|
=back |
107
|
|
|
|
|
|
|
|
108
|
|
|
|
|
|
|
=item * |
109
|
|
|
|
|
|
|
|
110
|
|
|
|
|
|
|
C<ProvisionedThroughput> - The provisioned throughput settings for the |
111
|
|
|
|
|
|
|
global secondary index, consisting of read and write capacity units. |
112
|
|
|
|
|
|
|
|
113
|
|
|
|
|
|
|
=back |
114
|
|
|
|
|
|
|
|
115
|
|
|
|
|
|
|
|
116
|
|
|
|
|
|
|
|
117
|
|
|
|
|
|
|
|
118
|
|
|
|
|
|
|
=head2 B<REQUIRED> KeySchema => ArrayRef[L<Paws::DynamoDB::KeySchemaElement>] |
119
|
|
|
|
|
|
|
|
120
|
|
|
|
|
|
|
Specifies the attributes that make up the primary key for a table or an |
121
|
|
|
|
|
|
|
index. The attributes in C<KeySchema> must also be defined in the |
122
|
|
|
|
|
|
|
C<AttributeDefinitions> array. For more information, see Data Model in |
123
|
|
|
|
|
|
|
the I<Amazon DynamoDB Developer Guide>. |
124
|
|
|
|
|
|
|
|
125
|
|
|
|
|
|
|
Each C<KeySchemaElement> in the array is composed of: |
126
|
|
|
|
|
|
|
|
127
|
|
|
|
|
|
|
=over |
128
|
|
|
|
|
|
|
|
129
|
|
|
|
|
|
|
=item * |
130
|
|
|
|
|
|
|
|
131
|
|
|
|
|
|
|
C<AttributeName> - The name of this key attribute. |
132
|
|
|
|
|
|
|
|
133
|
|
|
|
|
|
|
=item * |
134
|
|
|
|
|
|
|
|
135
|
|
|
|
|
|
|
C<KeyType> - The role that the key attribute will assume: |
136
|
|
|
|
|
|
|
|
137
|
|
|
|
|
|
|
=over |
138
|
|
|
|
|
|
|
|
139
|
|
|
|
|
|
|
=item * |
140
|
|
|
|
|
|
|
|
141
|
|
|
|
|
|
|
C<HASH> - partition key |
142
|
|
|
|
|
|
|
|
143
|
|
|
|
|
|
|
=item * |
144
|
|
|
|
|
|
|
|
145
|
|
|
|
|
|
|
C<RANGE> - sort key |
146
|
|
|
|
|
|
|
|
147
|
|
|
|
|
|
|
=back |
148
|
|
|
|
|
|
|
|
149
|
|
|
|
|
|
|
=back |
150
|
|
|
|
|
|
|
|
151
|
|
|
|
|
|
|
The partition key of an item is also known as its I<hash attribute>. |
152
|
|
|
|
|
|
|
The term "hash attribute" derives from DynamoDB' usage of an internal |
153
|
|
|
|
|
|
|
hash function to evenly distribute data items across partitions, based |
154
|
|
|
|
|
|
|
on their partition key values. |
155
|
|
|
|
|
|
|
|
156
|
|
|
|
|
|
|
The sort key of an item is also known as its I<range attribute>. The |
157
|
|
|
|
|
|
|
term "range attribute" derives from the way DynamoDB stores items with |
158
|
|
|
|
|
|
|
the same partition key physically close together, in sorted order by |
159
|
|
|
|
|
|
|
the sort key value. |
160
|
|
|
|
|
|
|
|
161
|
|
|
|
|
|
|
For a simple primary key (partition key), you must provide exactly one |
162
|
|
|
|
|
|
|
element with a C<KeyType> of C<HASH>. |
163
|
|
|
|
|
|
|
|
164
|
|
|
|
|
|
|
For a composite primary key (partition key and sort key), you must |
165
|
|
|
|
|
|
|
provide exactly two elements, in this order: The first element must |
166
|
|
|
|
|
|
|
have a C<KeyType> of C<HASH>, and the second element must have a |
167
|
|
|
|
|
|
|
C<KeyType> of C<RANGE>. |
168
|
|
|
|
|
|
|
|
169
|
|
|
|
|
|
|
For more information, see Specifying the Primary Key in the I<Amazon |
170
|
|
|
|
|
|
|
DynamoDB Developer Guide>. |
171
|
|
|
|
|
|
|
|
172
|
|
|
|
|
|
|
|
173
|
|
|
|
|
|
|
|
174
|
|
|
|
|
|
|
=head2 LocalSecondaryIndexes => ArrayRef[L<Paws::DynamoDB::LocalSecondaryIndex>] |
175
|
|
|
|
|
|
|
|
176
|
|
|
|
|
|
|
One or more local secondary indexes (the maximum is five) to be created |
177
|
|
|
|
|
|
|
on the table. Each index is scoped to a given partition key value. |
178
|
|
|
|
|
|
|
There is a 10 GB size limit per partition key value; otherwise, the |
179
|
|
|
|
|
|
|
size of a local secondary index is unconstrained. |
180
|
|
|
|
|
|
|
|
181
|
|
|
|
|
|
|
Each local secondary index in the array includes the following: |
182
|
|
|
|
|
|
|
|
183
|
|
|
|
|
|
|
=over |
184
|
|
|
|
|
|
|
|
185
|
|
|
|
|
|
|
=item * |
186
|
|
|
|
|
|
|
|
187
|
|
|
|
|
|
|
C<IndexName> - The name of the local secondary index. Must be unique |
188
|
|
|
|
|
|
|
only for this table. |
189
|
|
|
|
|
|
|
|
190
|
|
|
|
|
|
|
=item * |
191
|
|
|
|
|
|
|
|
192
|
|
|
|
|
|
|
C<KeySchema> - Specifies the key schema for the local secondary index. |
193
|
|
|
|
|
|
|
The key schema must begin with the same partition key as the table. |
194
|
|
|
|
|
|
|
|
195
|
|
|
|
|
|
|
=item * |
196
|
|
|
|
|
|
|
|
197
|
|
|
|
|
|
|
C<Projection> - Specifies attributes that are copied (projected) from |
198
|
|
|
|
|
|
|
the table into the index. These are in addition to the primary key |
199
|
|
|
|
|
|
|
attributes and index key attributes, which are automatically projected. |
200
|
|
|
|
|
|
|
Each attribute specification is composed of: |
201
|
|
|
|
|
|
|
|
202
|
|
|
|
|
|
|
=over |
203
|
|
|
|
|
|
|
|
204
|
|
|
|
|
|
|
=item * |
205
|
|
|
|
|
|
|
|
206
|
|
|
|
|
|
|
C<ProjectionType> - One of the following: |
207
|
|
|
|
|
|
|
|
208
|
|
|
|
|
|
|
=over |
209
|
|
|
|
|
|
|
|
210
|
|
|
|
|
|
|
=item * |
211
|
|
|
|
|
|
|
|
212
|
|
|
|
|
|
|
C<KEYS_ONLY> - Only the index and primary keys are projected into the |
213
|
|
|
|
|
|
|
index. |
214
|
|
|
|
|
|
|
|
215
|
|
|
|
|
|
|
=item * |
216
|
|
|
|
|
|
|
|
217
|
|
|
|
|
|
|
C<INCLUDE> - Only the specified table attributes are projected into the |
218
|
|
|
|
|
|
|
index. The list of projected attributes are in C<NonKeyAttributes>. |
219
|
|
|
|
|
|
|
|
220
|
|
|
|
|
|
|
=item * |
221
|
|
|
|
|
|
|
|
222
|
|
|
|
|
|
|
C<ALL> - All of the table attributes are projected into the index. |
223
|
|
|
|
|
|
|
|
224
|
|
|
|
|
|
|
=back |
225
|
|
|
|
|
|
|
|
226
|
|
|
|
|
|
|
=item * |
227
|
|
|
|
|
|
|
|
228
|
|
|
|
|
|
|
C<NonKeyAttributes> - A list of one or more non-key attribute names |
229
|
|
|
|
|
|
|
that are projected into the secondary index. The total count of |
230
|
|
|
|
|
|
|
attributes provided in C<NonKeyAttributes>, summed across all of the |
231
|
|
|
|
|
|
|
secondary indexes, must not exceed 20. If you project the same |
232
|
|
|
|
|
|
|
attribute into two different indexes, this counts as two distinct |
233
|
|
|
|
|
|
|
attributes when determining the total. |
234
|
|
|
|
|
|
|
|
235
|
|
|
|
|
|
|
=back |
236
|
|
|
|
|
|
|
|
237
|
|
|
|
|
|
|
=back |
238
|
|
|
|
|
|
|
|
239
|
|
|
|
|
|
|
|
240
|
|
|
|
|
|
|
|
241
|
|
|
|
|
|
|
|
242
|
|
|
|
|
|
|
=head2 B<REQUIRED> ProvisionedThroughput => L<Paws::DynamoDB::ProvisionedThroughput> |
243
|
|
|
|
|
|
|
|
244
|
|
|
|
|
|
|
Represents the provisioned throughput settings for a specified table or |
245
|
|
|
|
|
|
|
index. The settings can be modified using the C<UpdateTable> operation. |
246
|
|
|
|
|
|
|
|
247
|
|
|
|
|
|
|
For current minimum and maximum provisioned throughput values, see |
248
|
|
|
|
|
|
|
Limits in the I<Amazon DynamoDB Developer Guide>. |
249
|
|
|
|
|
|
|
|
250
|
|
|
|
|
|
|
|
251
|
|
|
|
|
|
|
|
252
|
|
|
|
|
|
|
=head2 StreamSpecification => L<Paws::DynamoDB::StreamSpecification> |
253
|
|
|
|
|
|
|
|
254
|
|
|
|
|
|
|
The settings for DynamoDB Streams on the table. These settings consist |
255
|
|
|
|
|
|
|
of: |
256
|
|
|
|
|
|
|
|
257
|
|
|
|
|
|
|
=over |
258
|
|
|
|
|
|
|
|
259
|
|
|
|
|
|
|
=item * |
260
|
|
|
|
|
|
|
|
261
|
|
|
|
|
|
|
C<StreamEnabled> - Indicates whether Streams is to be enabled (true) or |
262
|
|
|
|
|
|
|
disabled (false). |
263
|
|
|
|
|
|
|
|
264
|
|
|
|
|
|
|
=item * |
265
|
|
|
|
|
|
|
|
266
|
|
|
|
|
|
|
C<StreamViewType> - When an item in the table is modified, |
267
|
|
|
|
|
|
|
C<StreamViewType> determines what information is written to the table's |
268
|
|
|
|
|
|
|
stream. Valid values for C<StreamViewType> are: |
269
|
|
|
|
|
|
|
|
270
|
|
|
|
|
|
|
=over |
271
|
|
|
|
|
|
|
|
272
|
|
|
|
|
|
|
=item * |
273
|
|
|
|
|
|
|
|
274
|
|
|
|
|
|
|
C<KEYS_ONLY> - Only the key attributes of the modified item are written |
275
|
|
|
|
|
|
|
to the stream. |
276
|
|
|
|
|
|
|
|
277
|
|
|
|
|
|
|
=item * |
278
|
|
|
|
|
|
|
|
279
|
|
|
|
|
|
|
C<NEW_IMAGE> - The entire item, as it appears after it was modified, is |
280
|
|
|
|
|
|
|
written to the stream. |
281
|
|
|
|
|
|
|
|
282
|
|
|
|
|
|
|
=item * |
283
|
|
|
|
|
|
|
|
284
|
|
|
|
|
|
|
C<OLD_IMAGE> - The entire item, as it appeared before it was modified, |
285
|
|
|
|
|
|
|
is written to the stream. |
286
|
|
|
|
|
|
|
|
287
|
|
|
|
|
|
|
=item * |
288
|
|
|
|
|
|
|
|
289
|
|
|
|
|
|
|
C<NEW_AND_OLD_IMAGES> - Both the new and the old item images of the |
290
|
|
|
|
|
|
|
item are written to the stream. |
291
|
|
|
|
|
|
|
|
292
|
|
|
|
|
|
|
=back |
293
|
|
|
|
|
|
|
|
294
|
|
|
|
|
|
|
=back |
295
|
|
|
|
|
|
|
|
296
|
|
|
|
|
|
|
|
297
|
|
|
|
|
|
|
|
298
|
|
|
|
|
|
|
|
299
|
|
|
|
|
|
|
=head2 B<REQUIRED> TableName => Str |
300
|
|
|
|
|
|
|
|
301
|
|
|
|
|
|
|
The name of the table to create. |
302
|
|
|
|
|
|
|
|
303
|
|
|
|
|
|
|
|
304
|
|
|
|
|
|
|
|
305
|
|
|
|
|
|
|
|
306
|
|
|
|
|
|
|
=head1 SEE ALSO |
307
|
|
|
|
|
|
|
|
308
|
|
|
|
|
|
|
This class forms part of L<Paws>, documenting arguments for method CreateTable in L<Paws::DynamoDB> |
309
|
|
|
|
|
|
|
|
310
|
|
|
|
|
|
|
=head1 BUGS and CONTRIBUTIONS |
311
|
|
|
|
|
|
|
|
312
|
|
|
|
|
|
|
The source code is located here: https://github.com/pplu/aws-sdk-perl |
313
|
|
|
|
|
|
|
|
314
|
|
|
|
|
|
|
Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues |
315
|
|
|
|
|
|
|
|
316
|
|
|
|
|
|
|
=cut |
317
|
|
|
|
|
|
|
|