Amazon
DynamoDB - Create table
Declaration
<AMAWSDYNAMODB ACTIVITY="create_table" ACCESSKEY="text" SECRETKEY="text (encrypted)" USERAGENT="text" MAXERRORRETRY="number" SERVICEURL="text" PROXYHOST="text" PROXYPORT="number" PROXYUSER="text" PROXYPWD="text (encrypted)" SIGNMETHOD="text" SIGNVERSION="text" NAME="text" HASH="text" HASHTYPE="text (options)" RANGE="text" RANGETYPE="text (options)" READ="number" WRITE="number" />
Description
Creates a new table and specifies the unique name, primary key and read/write requirements for the table.
Practical usage
Used to create a table. When you create a table, in addition to the table name, you must specify the primary key of the table. Amazon DynamoDB supports the following two types of primary keys:
-
Hash Type Primary Key - In this case the primary key is made of one attribute, a hash attribute. Amazon DynamoDB builds an unordered hash index on this primary key attribute.
-
Hash and Range Type Primary Key - In this case, the primary key is made of two attributes. The first attributes is the hash attribute and the second one is the range attribute. Amazon DynamoDB builds an unordered hash index on the hash primary key attribute and a sorted range index on the range primary key attribute.
Parameters
Connection
Property | Type | Required | Default | Markup | Description |
---|---|---|---|---|---|
Connection | --- | --- | --- | --- | Indicates where user
credentials and preferences should originate from. This is a design
mode parameter used only during task construction and configuration,
thus, comprises no markup. The available options are:
|
Session | Text | Yes, if the connection is set to Session | DynamoDBSession1 | SESSION="myDynamoDBsession" | The name of an existing session to associate with this activity. This parameter becomes active and is required if the Connection parameter is set to Session. |
Access key | Text | Yes, if the connection is set to Host | (Empty) | ACCESSKEY="[accessKey]" | The ID that uniquely identifies the owner of the AWS service account (similar to a username). Together, the Access Key and Secret Access Key are the main credentials used to access and control basic AWS services through the API. This parameter is active only if the Connection parameter is set to Host. |
Secret access key | Text | Yes, if the connection is set to Host | (Empty) | SECRETKEY="[SecretKey]" | The secret ID that corresponds with the Access Key (similar to a password). When a request is sent, AWS verifies that this key corresponds with the Access Key in order to authenticate the signature and confirm that the request sender is legitimate. This parameter is active only if the Connection parameter is set to Host. |
User agent | Text | No | Automate | USERAGENT="Automate" | The name of the client or application initiating requests to AWS. The default value is Automate. |
Maximum number retries on error | Number | No | (Empty) | MAXERRORRETRY="7" | The amount of times this activity should retry sending the request to the server before returning an error. Network components can generate errors anywhere in the life of a given request, therefore, implementing retries can increase reliability. |
Service URL | Text | No | (Empty) | SERVICEURL="https://sdb.eu-west-1.amazonaws.com" | The URL that provides the service region endpoint. To make the service call to a different region, simply specify the region-specific endpoint. For example, entering https://dynamodb.us-east-1.amazonaws.com would point to US East (Northern Virginia) region. A complete list of DynamoDB regions and their associated endpoints can be found below under DynamoDB regions and endpoints. |
Proxy host | Text | No | (Empty) | PROXYHOST="proxy.host.com" | The hostname (for example, server.domain.com) or IP address (for example, xxx.xxx.xxx.xxx) of the proxy server to use when connecting to AWS. |
Proxy port | Number | No | (Empty) | PROXYPORT="1028" | The port number to use to connect to the proxy server. |
Proxy username | Text | No | (Empty) | PROXYUSERNAME="Username" | The username to authenticate with the proxy server. |
Proxy password | Text | No | (Empty) | PROXYPWD="encrypted" | The password to authenticate with the proxy server. |
Signature method | Text | No | (Empty) | SIGNMETHOD="HmacSHA256" | The signature method to use for signing the request. This provides a valid hashing algorithm for signature calculation. Valid AWS signature methods are HmacSHA1 and HmacSHA256. |
Signature version | Number | No | (Empty) | SIGNVERSION="2" | The signature version for signing the request. Valid AWS signature versions are 2 and 4. The difference with version 4 is that it allows you to sign your message using a key that is derived from your secret access key rather than using the secret access key itself. |
Table
Property | Type | Required | Default | Markup | Description |
---|---|---|---|---|---|
Name | Text | Yes | (Empty) | NAME="myTable" | The name of the table to create. Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot). Names can be between 3 and 255 characters long. |
Hash key | Text | Yes | (Empty) | HASH="theHash" | The primary key (simple or composite) structure for the new table. |
Hash type | Text (options) | No | String |
|
The hash key type.
The available options are:
|
Range key (optional) | Text | No | (Empty) | RANGE="theRange" | The range key of the table to create. |
Range type | Text (options) | No | String |
|
The range key type.
The available options are:
|
Read capacity units | Number | No | 5 | READ="10" | Specifies the minimum number of consistent read capacity units consumed per second for the new table before Amazon DynamoDB balances the load with other operations. The default value is 5. |
Write capacity units | Number | No | 5 | WRITE="12" | Specifies the minimum number of write capacity units consumed per second for the specified table before Amazon DynamoDB balances the load with other operations. The default value is 5. |
Additional notes
DynamoDB regions and endpoints
This table contains a complete list of DynamoDB endpoints, associated regions and supported protocols.
Endpoint | Region | Protocol |
---|---|---|
elasticmapreduce.us-east-1.amazonaws.com | US East (Northern Virginia) Region | HTTP and HTTPS |
elasticmapreduce.us-west-2.amazonaws.com | US West (Oregon) Region | HTTP and HTTPS |
elasticmapreduce.us-west-1.amazonaws.com | US West (Northern California) Region | HTTP and HTTPS |
elasticmapreduce.eu-west-1.amazonaws.com | EU (Ireland) Region | HTTP and HTTPS |
elasticmapreduce.ap-southeast-1.amazonaws.com | Asia Pacific (Singapore) Region | HTTP and HTTPS |
elasticmapreduce.ap-southeast-2.amazonaws.com | Asia Pacific (Sydney) Region | HTTP and HTTPS |
elasticmapreduce.ap-northeast-1.amazonaws.com | Asia Pacific (Tokyo) Region | HTTP and HTTPS |
elasticmapreduce.sa-east-1.amazonaws.com | South America (Sao Paulo) Region | HTTP and HTTPS |
Example
- Copy and paste the sample AML code below directly into the Task Builder Steps Panel.
- To successfully run the sample code, update parameters containing user credentials, files, file paths, or other information specific to the task to match your environment.
Description
This sample Amazon DynamoDB task creates a new table and new item in the table. A step-by-step description is embedded in the task.
<!-- Create session -->
<AMAWSDYNAMODB ACTIVITY="create_session" SESSION="DBSession1" ACCESSKEY="AKIAJ25JAKOPAC7123457" SECRETKEY="AM3i6P77pVEBOw=aME" />
<!-- Create table -->
<AMAWSDYNAMODB ACTIVITY="create_table" PROVIDER="session_based" SESSION="DBSession1" NAME="mytable" HASH="HashKeyName" />
<!-- Create item -->
<AMAWSDYNAMODB ACTIVITY="create_item" PROVIDER="session_based" SESSION="DBSession1" TABLE="mytable">
<ATTRIBUTE TYPE="String" NAME="gameName" VALUE="myGame" /><ATTRIBUTE TYPE="Number" NAME="gameId" VALUE="41021234" /><ATTRIBUTE TYPE="String" NAME="gameCost" VALUE="20" /></AMAWSDYNAMODB>
<!-- End session -->
<AMAWSDYNAMODB ACTIVITY="end_session" SESSION="DBSession1" />