๐Ÿ“š DynamoDB SDK Examples

October 8, 2024 ยท View on GitHub

This directory is a treasure trove of DynamoDB SDK examples in various programming languages. We're always eager for new contributions, so feel free to submit a pull request if you have something to share!

๐Ÿ” Explore the Samples

Dive into the following sections to discover a wealth of DynamoDB SDK examples:

Node.js Java Python .Net Golang Rust

๐Ÿ‘จโ€๐Ÿ’ป Working with Items

Explore a wide range of operations for managing individual items in your DynamoDB tables, from batch processing to conditional updates.

ExampleLanguages
BatchGetJava .NET Node.js Python Rust
BatchWriteJava .NET Node.js Python Rust
DeleteItemJava .NET Node.js Python Rust
DeleteItemConditional.NET Python
GetItemJava .NET Node.js Python Rust
PutItemJava .NET Node.js Python Rust
PutItemConditionalJava .NET Node.js Python Rust
TransactGetJava .NET Node.js Python Rust
TransactWriteJava .NET Node.js Python Rust
UpdateItemJava .NET Node.js Python Rust
UpdateItemConditionalJava .NET Node.js Python Rust

Apologies, it seems the Markdown formatting for the badges is not rendering correctly in this case. Let me provide the table again with the badge images explicitly included:

๐Ÿ—ƒ๏ธ Working with PartiQL for DynamoDB

Learn how to leverage the powerful DynamoDB-specific SQL-like language, PartiQL, to execute advanced queries and transactions.

ExampleLanguages
PartiQL SimpleSelectStatementNode.js Python
PartiQL ExecuteStatementNode.js Python
PartiQL ExecuteTransactionNode.js Python
PartiQL BatchExecuteStatementNode.js Python

๐Ÿ” Working with Indexes

Discover how to create, update, and query secondary indexes to optimize your data access patterns.

ExampleLanguages
Create IndexRust
Update Index Provisioned CapacityNode.js
Delete IndexNode.js Rust
Query IndexJava Rust

๐Ÿ” Working with Queries

Learn how to efficiently query your DynamoDB tables, with examples covering consistency, filtering, projections, and more.

ExampleLanguages
ConsistentReadJava .NET Node.js Python Rust
CountNode.js Python
FilterExpressionNode.js Python Rust
ProjectionExpressionNode.js Python Rust
ReturnConsumedCapacityNode.js Python Rust

๐Ÿ” Working with Scans

Learn how to perform full table scans, with support for pagination and parallel processing to optimize performance.

ExampleLanguages
Scan with paginationJava Node.js Rust
Scan in parallelNode.js Rust

๐ŸŒŠ Working with Streams

Dive into the world of DynamoDB Streams and learn how to read and process real-time changes to your table data.

ExampleLanguages
Read from streamNode.js

๐Ÿ—ƒ๏ธ Working with Tables

From creating and deleting tables to managing global tables and auto-scaling, this section has you covered for all your table management needs.

ExampleLanguages
Add Global Table RegionGo Node.js Python
Add Provisioned CapacityGo Node.js Python
CreateGlobalTableGo Node.js
CreateTable On-DemandGo Node.js Python Rust
CreateTable ProvisionedGo Node.js Python
Delete Global Table RegionGo Node.js Python
DeleteTableGo Node.js Python
DescribeGlobalTable and DescribeGlobalTableSettingsGo Node.js
DescribeLimitsGo Node.js Python
DescribeTableGo Node.js Python Rust
Disable AutoscalingGo Node.js Python
Enable AutoscalingGo Node.js Python
Update AutoscalingGo
Disable StreamsGo Node.js Rust
Enable StreamsGo Node.js Python Rust
ListTablesGo Node.js Python Rust
UpdateGlobalTable and UpdateGlobalTableSettingsGo Node.js
UpdateTable On-DemandGo Node.js Python
UpdateTable ProvisionedGo Node.js Python

Important Note: Be advised that when you delete a table, it does not delete auto-scaling info (e.g. scalable targets, scaling policies) or CloudWatch alarms. This must be done in separate calls.

While the examples in this repository focus on the AWS SDKs, there are also other great DynamoDB client libraries available:

For a detailed list of the APIs covered in this folder consult this file Operations