Amazon DynamoDB - Create item
Declaration
<AMAWSDYNAMODB ACTIVITY="create_item" ACCESSKEY="text" SECRETKEY="text (encrypted)" USERAGENT="text" MAXERRORRETRY="number" SERVICEURL="text" PROXYHOST="text" PROXYPORT="number" PROXYUSER="text" PROXYPWD="text (encrypted)" SIGNMETHOD="text" SIGNVERSION="number" TABLE="text"> <ATTRIBUTE TYPE="text (options)" NAME="text" VALUE="text" /> </AMAWSDYNAMODB>
Description: Creates a new item or replaces an old item with a new one (including all attributes). If an item already exists in the specified table with the same primary key, the new item completely replaces the existing one.
Practical Usage
Perform this activity to insert a new item if one with the specified primary key doesn't exist or replace an existing item if it has certain attribute values. Each attribute in an item can be single or multi-valued.
Connection Parameters
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 connection is session-based |
DynamoDB Session1 |
SESSION="myDynamoDBsession" |
The name of an existing session to associate this activity with. The default value is DynamoDBSession1. This parameter is active only if the Connection parameter is set to Session. |
Access key |
Text |
Yes if connection is host-based |
(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 connection is host-based |
(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 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 retries on error |
Number |
No |
(Empty) |
MAXERRORRETRY="7" |
The amount of times this activity should retry sending the request to the sever 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 host name (e.g., server.domain.com) or IP address (e.g., 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. |
Item Parameters
Property |
Type |
Required |
Default |
Markup |
Description |
---|---|---|---|---|---|
Table |
Text |
Yes |
(Empty) |
TABLE="myTable" |
The name of the table in which the new item should be placed. |
[Attribute] Type |
Text (options) |
Yes |
(Empty) |
|
In Amazon DynamoDB, a table is a collection of items and each item is a collection of attributes. Item attributes consists of type and name-value pair. In visual mode, select Click here to add new row... to expose a grid in which to enter one or more rows of attributes to set for the new item. The available attribute types to set for an tem are:
|
[Attribute] Name |
Text |
Yes |
(Empty) |
NAME="Phone" |
Specifies the 'name' portion of the name-value pair to set for the new item. In visual mode, select Click here to add new row... to expose a grid in which to enter one or more rows of attributes to set for the new item. NOTE: An item can have multiple attributes and an attribute can have multiple values. |
[Attribute] Value |
Text |
Yes |
(Empty) |
VALUE=714-555-1212 |
Specifies the value' portion of the name-value pair to set for the new item. In visual mode, select Click here to add new row... to expose a grid in which to enter one or more rows of attributes to set for the new item. NOTE: An item can have multiple attributes and an attribute can have multiple values. |
Description tab - A custom description can be provided on the Description tab to convey additional information or share special notes about a task step.
Error Causes tab - Specify how this step should behave upon the occurrence of an error. (Refer to Task Builder > Error Causes Tab for details.)
On Error tab - Specify what AWE should do if this step encounters an error as defined on the Error Causes tab. (Refer to Task Builder > On Error Tab for details.)
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
The sample AML code below can be copied and pasted directly into the Steps panel of the Task Builder.
Description: Simple DynamoDB task that creates a new table and new item in the table. 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" />