Master AWS DynamoDB

Video description

This course is designed to take you from foundational knowledge to advanced expertise in AWS DynamoDB, one of the most powerful NoSQL databases. We start by setting up the development environment, creating an AWS account, and configuring the AWS CLI. You'll then dive into the essentials of DynamoDB, learning how to create and manage tables using both the AWS Management Console and command-line tools.

As you progress, you'll gain a deep understanding of DynamoDB's core concepts, such as primary keys, data types, and item management. You'll also explore various tools and interfaces for interacting with DynamoDB, including the AWS SDK for Python. The hands-on exercises will help you build practical skills in creating and managing tables, performing CRUD operations, and optimizing data retrieval using secondary indexes.

The advanced sections focus on performance optimization, teaching you best practices for designing partition keys and structuring indexes. You'll learn to tailor your DynamoDB tables for different use cases, ensuring efficient data access and minimizing costs. By the end of the course, you'll have a solid understanding of DynamoDB's capabilities and be able to implement scalable, high-performance NoSQL solutions.

What you will learn

  • Create and configure DynamoDB tables using the Console, CLI, and SDK.
  • Perform CRUD operations to manage data effectively in DynamoDB.
  • Design efficient partition and sort keys for optimized query performance.
  • Utilize Local and Global Secondary Indexes for advanced data retrieval.
  • Apply data modeling best practices to support diverse use cases.
  • Manage and analyze DynamoDB costs for efficient resource utilization.

Audience

This course is ideal for software developers, data engineers, and cloud architects looking to master AWS DynamoDB. Prior experience with AWS services and a basic understanding of databases are recommended. Familiarity with the command line and Python programming is beneficial but not required.

About the Author

Paulo Dichone: Paulo Dichone, a dedicated developer and educator in Android, Java, and Flutter, has empowered over 80,000 students globally with both soft and technical skills through his platform, Build Apps with Paulo. Holding a Computer Science degree and with extensive experience in mobile and web development, Paulo's passion lies in guiding learners to become proficient developers. Beyond his 5 years of online teaching, he cherishes family time, music, and travel, aiming to make impactful developers irrespective of their background.

Table of contents

  1. Chapter 1 : Introduction
    1. Introduction Course Prerequisites
    2. Course Structure
  2. Chapter 2 : Development Environment Setup
    1. Dev Environment Setup - Instructions
    2. Install VS Code - Optional
  3. Chapter 3 : AWS Account Creation Setting up AWS CLI
    1. Create an AWS Account
    2. Creating an IAM User
    3. AWS CLI - Introduction and Installation
    4. Configure AWS CLI
  4. Chapter 4 : AWS DynamoDB Fundamentals Deep Dive
    1. Create a DynamoDB Table using the AWS Management Console - Hands-on
    2. AWS DynamoDB Deep Dive - Definition and Key Features
    3. NoSQL vs SQL Databases and Key Differences
    4. DynamoDB Components and How They Work
    5. DynamoDB Pricing
    6. Summary
  5. Chapter 5 : Tools for Interacting with AWS DynamoDB - AWS CLI and AWS SDK
    1. Tools for Interacting with DynamoDB Deep Dive - Overview
    2. Hands-on - Code Structure and Creating a Table using AWS CLI
    3. Verify the Table with the Describe-table Command
    4. Adding Two Books with the CLI Commands
    5. AWS CLI - Command Breakdown
    6. Get an Item
    7. Scan for Items
    8. Update an Item
    9. Delete an Item
    10. Delete the Table
    11. DynamoDB Data Types and Section Summary
  6. Chapter 6 : Interacting with DynamoDB Table with AWS SDK
    1. Interacting with DynamoDB with AWS SDK - Tools for Interacting with DynamoDB
    2. The Programmatic Interfaces of the AWS SDK - Full Overview
    3. AWS SDKs and Tools for Interacting with AWS DynamoDB - Overview
    4. Create a Table with SDK Python
    5. Add a Book to the Table with SDK
    6. Loading Books from a JSON File with the SDK
    7. Delete a Book by Its ISBN or Title
    8. Scan the Table
    9. Querying the Table
    10. Update a Book
    11. Delete an Item
    12. NOTE - Using the CLI to Interact with Our Table
    13. Summary
  7. Chapter 7 : AWS DynamoDB Indexes - Deep Dive
    1. Introduction to Indexes - Full Overview
    2. Scan and Filter - Differences and Capacity Considerations
    3. Global Secondary Indexes - LSI and GSI - Overview
    4. Hands-on - Create a Secondary Index in the Console
    5. Things to Consider when Creating GSIs
    6. Hands-on - Create an LSI with a New Book Table - Restructuring
    7. Loading Restructured Books
    8. Hands-on - Querying our LSI
    9. Hands-on - Querying LSI using AWS CLI
    10. Hands-on - Create a GSI Through Update Command
    11. Hands-on - GSI Query
    12. Sparse Index
    13. Summary
  8. Chapter 8 : Optimizing Indexes for Efficiency
    1. Optimizing Indexes Key Strategies and Considerations: Access Patterns Use Case
    2. Partition Key Design and Design Keys Considerations
    3. Optimizing Sort Keys
    4. Structuring Secondary Indexes for Efficiency
    5. Use Cases - Design Considerations - Business Decisions
    6. Summary
  9. Chapter 9 : Wrap Up
    1. Clean Up
    2. Congratulations Next Steps

Product information

  • Title: Master AWS DynamoDB
  • Author(s): Paulo Dichone
  • Release date: September 2024
  • Publisher(s): Packt Publishing
  • ISBN: 9781836647577