Skip to content

DynamoDB ​

Scales to infinity. Partition keys, please.

Connecting ​

FieldNotes
Regionus-east-1 by default
Access Key ID
Secret Access KeyKept in the Keychain
EndpointOptional. http://localhost:8000 for DynamoDB Local

Lily signs requests with the access key you enter. AWS profiles, SSO, session tokens and the default credential chain are not supported yet, so create an access key for an IAM user.

For read-only use, the user needs dynamodb:ListTables, DescribeTable, Scan, Query, GetItem and PartiQLSelect. Mark the connection read-only too.

Tables ​

The sidebar lists tables with their keys (PK x · SK y) and shows whether you are on DynamoDB Local or AWS and the region. Create table takes a name, a partition key, an optional sort key and an optional global secondary index; keys are strings and billing is on-demand. Right-click a table for Understand table and Delete table (on AWS you type the name to confirm).

Three ways to read ​

  • Browse scans the table, 100 items per page. Filter by attribute with =, ≠, <, ≤, >, ≥, contains, begins with, exists and not exists, choosing text or number for the value. On tables with more than 2,000 items, Lily suggests Use Query before scanning.
  • Query reads by key on the table or any GSI or LSI. The partition key is matched with =; the sort key takes =, <, ≤, >, ≥, begins with or between. 200 items per page, ascending.
  • PartiQL runs a statement, starting from SELECT * FROM "table".

⌘ ↵ runs each of them. Load more continues from where the page ended, and the footer shows the read capacity used.

Editing items ​

Add item and Edit item open the item as JSON and write it with PutItem, replacing it. Changing a key attribute moves the item to the new key. Delete item removes it.

Numbers show exactly as stored, and sets and binary round-trip through wrappers:

json
{ "tags": { "$ss": ["new", "sale"] }, "sizes": { "$ns": [38, 40] }, "thumb": { "$b": "iVBORw0..." } }

$bs holds a binary set. On read-only connections, PartiQL only runs SELECT and item and table writes are blocked.

AI ​

  • Ask AI writes a PartiQL SELECT from the key schema, indexes and attributes sampled from 24 items, and answers from up to 200 results. The answer step sends up to 20 items as they are; see What the AI sees.
  • Understand table describes it from its keys and attributes.

Playground ​

amazon/dynamodb-local on port 18000, key local, secret local, region us-east-1, with a Products table.

Lily DB is free for personal and commercial use.