Amazon DynamoDB - Create session

Declaration

<AMAWSDYNAMODB ACTIVITY="create_session" 
SESSION="text" ACCESSKEY="text" 
SECRETKEY="text (encrypted)" USERAGENT="text" 
MAXERRORRETRY="number" SERVICEURL="text" 
PROXYHOST="text" 
PROXYPORT="number" PROXYUSER="text" 
PROXYPWD="text (encrypted)" 
SIGNMETHOD="text" SIGNVERSION="number" />

Description: Creates a unique session in which to attach subsequent DynamoDB steps. This allows a single task the ability to execute numerous DynamoDB operations that exist in multiple sessions simultaneously. To end a session, use the End session activity.

IMPORTANT: The AWS DynamoDB activities are performed using Amazon's DynamoDB engine, therefore, launching and managing DynamoDB requires a valid Access Key ID and Secret Access Key.

Practical Usage

Used to create a new DynamoDB session.

Credentials Parameters

Property

Type

Required

Default

Markup

Description

Access key

Text

Yes

(Empty)

ACCESSKEY=

"022QF06E7MXBSH9DHM02"

A 20-character alphanumeric string that uniquely identifies the owner of the AWS service account, similar to a username. This key along with a corresponding secret access key forms a secure information set that AWS uses to confirm a valid user's identity. This parameter is active only if the Connection parameter is set to Host.

Secret Access key

Text

Yes

(Empty)

SECRETKEY=

"kWcrlUX5JEDGM/LtmEENI/

aVmYvHNif5zB+d9+ct"

A 40-character string that serves the role as password to access the AWS service account. This along with an associated access key forms a secure information set that EC2 uses to confirm a valid user's identity. This parameter is active only if the Connection parameter is set to Host.

Session

Text

Yes

DynamoDB

Session1

SESSION="myDynamo"

The name of the session to create. Several DynamoDB activities can be linked to this session, eliminating redundancy. Numerous sessions can exist within a single task providing efficiency. The default value for this parameter is DynamoDBSession1.

Advanced

Property

Type

Required

Default

Markup

Description

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.

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.)

Dynamo DB 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" />