On this page:
dynamo-endpoint
dynamo-region
attribute-type/  c
create-table
delete-table
describe-table
list-tables
put-item
get-item
delete-item
update-item
batch-get-item
batch-write-item
query
scan
update-table

11 Dynamo DB

 (require (planet gh/aws:1:=5/dynamo))

Dynamo is Amazon’s newer "NoSQL" service.

parameter

(dynamo-endpoint) → endpoint?

(dynamo-endpoint v) → void?
  v : endpoint?
Set the endpoint for the service. Defaults to (endpoint "dynamodb.us-east-1.amazonaws.com" #f).

parameter

(dynamo-region) → string?

(dynamo-region v) → void?
  v : string?
Set the region for the service. Defaults to "us-east-1".

value

attribute-type/c : (or/c "S" "N" "B")

A contract for Dynamo attribute types (string, number, base64 binary).

procedure

(create-table name    
  read-units    
  write-units    
  hash-key-name    
  hash-key-type    
  [range-key-name    
  range-key-type]) → jsexpr?
  name : string?
  read-units : exact-positive-integer?
  write-units : exact-positive-integer?
  hash-key-name : string?
  hash-key-type : attribute-type/c
  range-key-name : string? = #f
  range-key-type : attribute-type/c = #f
Create a table.

procedure

(delete-table name) → jsexpr?

  name : string?
Delete a table.

procedure

(describe-table name) → jsexpr?

  name : string?
Describe a table.

procedure

(list-tables #:limit limit #:from from) → jsexpr?

  limit : #f
  from : #f
List at most limit tables, starting with the table name from (if continuing a listing that had previously stopped at limit).

procedure

(put-item js) → jsexpr?

  js : jsexpr?

procedure

(get-item js) → jsexpr?

  js : jsexpr?

procedure

(delete-item js) → jsexpr?

  js : jsexpr?

procedure

(update-item js) → jsexpr?

  js : jsexpr?

procedure

(batch-get-item js) → jsexpr?

  js : jsexpr?

procedure

(batch-write-item js) → jsexpr?

  js : jsexpr?

procedure

(query js) → jsexpr?

  js : jsexpr?

procedure

(scan js) → jsexpr?

  js : jsexpr?

procedure

(update-table js) → jsexpr?

  js : jsexpr?
The remaining functions accept JSON which you must construct yourself in the form of a jsexpr?. The variation in the JSON is sufficient that wrapping them in some arbitrary Racket structure doesn’t provide added value. Instead, please see the Dynamo documentation for these similarly-named functions.