DynamoDB Onsite Training Course

Amazon DynamoDB Training - Onsite, Instructor-led

DynamoDB Database Development and DevOps

Training for DevOps, Architects and Developers

This DynamoDB course teaches the basics of the Dynamo Database with a focus on successful production deployments.

The AWS DynamoDB NoSQL database is one of the most powerful and widely used non-relational databases available today. It is a fault tolerant, highly scalable database with tunable consistency that meets the demanding requirements of the can’t fail, must scale systems driving growth for many of the most successful enterprises of today. However, along with that capability comes a new data and programming model that many organizations lack the expertise to use in an optimal fashion. Databases like Cassandra, Voldemort, Riak and Aerospike have copied some of the internals of DynamoDB based on the original Dynamo papers published by Amazon. Learning DynamoDB will give you a leg up with understanding the basics of many NoSQL solutions.

You scale DynamoDB by purchasing desired throughput and expected requests. Then it partitions the data for you to accomplish this. DynamoDB will spread the data and traffic over a number of servers using SSD. DynamoDB allows predictable performance which is easy to scale. DynamoDB also easily integrates with Hadoop and EMR (elastic map-reduce), making it a no-brainer solution for big data.

Electronic Arts, HTC, Dropcam, Twiitch, Shazam, Twilio, The New York Times, AdRoll, and many more companies use DynamoDB. Then if you consider all of the NoSQL solutions that use the Dynamo paper and architecture, it is a staggering amount of companies that use this Dynamo tech stack. DynamoDB specializes in high-speed writes and linear scale-out without the pain of managing your own clusters. Also with the popularity of AWS Lambda, you can see a sharp rise in DynamoDB usage and demand for DynamoDB skills.

This course provides a technical introduction to all the conceptual and practical areas needed to use the DynamoDB Database successfully, and deploy to production. The course provides a solid foundation in the architecture and data model of the DynamoDB NoSQL Database and how to work with it. It covers queries in detail, as well as important data modeling techniques to optimize your usage of the database. It includes either in-depth coverage of the Java API for the DynamoDB Database or using Node.js from AWS Lambda.

After taking this course, you will be ready to work with DynamoDB in an informed and productive manner. You will gain a clear understanding of how DynamoDB works, and be fully prepared to use it in production systems.

We provide more than just developer training. We provide the training to maximize your developer and DevOps expertise.

Why choose us and our DynamoDB Course

We have successfully deployed the DynamoDB database, and have deployed Dynamo style databases at large fortune 100s and very high traffic web properties. We have been there and done that and understand when and where certain DynamoDB features makes sense and how to avoid common pitfalls with DynamoDB.

Our DynamoDB course is taught by real-world AWS consultants who implement microservices and tools for the AWS environment. Don’t forget we also provide DynamoDB consulting, and related consulting. We have no instructor on staff who is not also a seasoned developer.

Endorsements

“(The instructor) taught an onsite course at our office…. I highly recommend (the instructor). The training was thorough and the examples were non-trivial. … He was ready with answers to the most detailed of questions.” –Jack

“He’s an engaging instructor who is genuinely interested in his client’s results. He did a great job customizing our course content to meet our exact needs. A few months earlier we had another vendor teach a similar course without nearly the same positive results. " –John

“(The instructor) knowledge of … technologies is both deep and wide. His training and mentoring skills are the best that I’ve come across. His passion and proficiency has been inspiring for me and many others in the development community.” –Tom

(The instructor) delivered what was hands-down the best technical training I’ve ever received. He also played a key role on a large project, and it was always a great pleasure to work with him. –Aaron

Being a consultant as well as an teacher, he speaks from experience and possesses a deep knowledge of his subject areas. Highly recommended. –Thomas

AWS Cassandra/Kafka and Cassandra/Kafka as a Service

Our company is setup to support tools like Cassandra, Kafka and DynamoDB running in AWS EC2. We have deployed 100 million user microservices in AWS using NoSQL solutions, and implemented streaming at scale. We provide Cassandra, Kafka, DynamoDB support, AMI images for Cassandra/Kafka, CloudFormation templates, and tools for collecting metrics and logs to support Cassandra and Kafka in AWS via CloudWatch. Supporting Cassandra, Kafka, cloud-native microservices, AWS Lambda and DynamoDB in production in AWS, EC2, and S3 is what we do.

You can be assured that the person teaching the course is a battle-hardened expert. Contact us to book onsite training today. Call to book 1-415-758-1113.

DynamoDB Course Information

Duration: 3 to 4 days

Labs: Minimum 50% hands-on labs

Prerequisites

Reasonable Java experience or AWS Lambda Node.js experience

Supported Platforms:

DynamoDB running locally or in AWS. Accessing DynamoDB from Java or AWS Lambda/Node.js.

Skills Gained:

  • Understand the motivation for non-relational data stores
  • Understand DynamoDB at a high-level
  • Basic setup of DynamoDB, and how to run DynamoDB locally
  • Understand the DynamoDB architecture
  • Understand and use data replication and eventual consistency with DynamoDB
  • Learn the basics of the DynamoDB data model, and how to create good data models
  • Perform queries, and scans
  • Learn and use DynamoDB API including the async API
  • Know the standard DynamoDB data types
  • Understand and use primary keys, sort keys, and secondary indexes (global and local)
  • Understand and use document data type (list and map), counters, and batches
  • Use the basic DynamoDB API to connect to and work with DynamoDB
  • Use asynchronous API
  • Understand KPIs for monitoring DynamoDB in CloudWatch
  • Understand DynamoDB Security, IAM, and Encryption

Details:

Session 1: Introduction to the DynamoDB Database

Overview:

  • The motivation for non-relational data stores
  • Why relational databases don’t support modern applications well
  • the DynamoDB Database at a high-level
  • Use cases
  • Features Strengths (Scalability, robustness, linear performance with scale-out), etc.
  • High Level Structure

Acquiring and Installing the DynamoDB Database

  • Local Install
  • Configuration Structure
  • Accessing from AWS Lambda

LABS:

  • Configure, Start/Stop the DynamoDB Database
  • App Demo

Session 2: Overview of Architecture and Data Model

Basic DynamoDB Database Architecture:

  • Cluster Structure - Nodes
  • Consistent Hashing, Tokens, Partitioners
  • Data Replication
  • Consistency, the CAP theorem, Eventual Consistency

The DynamoDB Data Model:

  • Data Model and DynamoDB API Introduction
  • Using DynamoDB to perform queries
  • Single primary key tables and how to define them using CQL
  • Inserting Data (INSERT), Upsert/UpdateItem
  • Querying for Data (SELECT)
  • DynamoDB Data Types
  • Working with Primary Keys

LABS:

  • Create Simple Tables
  • Insert/Query Tables
  • Use copy to Populate a Table

Session 3: The DynamoDB Data Model

Compound Primary Keys

  • Table definition
  • The partition key and sort columns

Advanced Capabilities

  • Batches
  • Filtering results
  • Local secondary indexes
  • Global secondary indexes

Simulating Composite Partition Keys

  • Motivation and uses
  • Definition

Indexes and Secondary Indexes

  • Partition Key Indexes
  • Non-primary Key (Secondary) Indexes

Atomic Counters

  • Motivation and Uses
  • Structure, Characteristics, Usage

Working with time series data

  • Motivation and Uses
  • Structure, Characteristics, Usage

Document Types

  • Document type definition (list, and map)
  • Inserting, Updating, Deleting with Document types

LABS: (Labs use CLI, DynamoDB console and DynamoDB JS shell)

  • Introduce Compound Partition Keys simulation
  • Refine Sort Keys
  • Work with Composite Partition Keys
  • Local Secondary Indexes
  • Global Secondary Indexes
  • Counters
  • Using Document types (lists and maps)

Session 4: Data Consistency

  • Data Consistency in DynamoDB
  • What happens under the covers
  • LAB

Session 5: How Things Work

  • Write Failures
  • Key and Row Caches
  • Multi-Data Center Support
  • Streaming DynamoDB Activity
  • LAB

Session 6: Programming DynamoDB (Labs are either Java or AWS Lambda/Node.js)

  • API Introduction
  • Upserts
  • Deletes
  • Working with items
  • Batch operations
  • Querying
  • Scanning
  • Asynchronous Querying
  • Working with streams
  • Working with Scans
  • Object Mapping
  • Pagination
  • LABs

Session 7: Best Practices

  • Understanding Partitions
  • Avoiding hotspots
  • When to use caching
  • Using uniform access
  • LABS

Session 8: Production Support

  • Using CloudWatch to monitor DynamoDB
  • Using streams to replicate data in another region
  • Log aggregation with CloudTrail and CloudWatch
  • Exporting data to S3 with AWS Data Pipeline
  • Importing data to DynamoDB from S3 using AWS Data Pipeline
  • Encryption and Masking
  • Introduction to IAM (roles, resources)
  • IAM and DynamoDB
  • LABS

Session 9: Integrating DynamoDB with Elastic Map Reduce and RedShift

  • Introduction to EMR/Hadoop
  • Exporting data into Hadoop/EMR
  • Introduction to Hive
  • Query data from Hive/EMR
  • Introduction to RedShift
  • Uploading DynamoDB Data into AWS RedShift
  • Perform queries in RedShift against DynamoDB tables loaded
  • LABS

If there is a specific topic that you want to cover regarding DynamoDB, let us know. We can customize the course based on your needs if given enough lead time, or combine material from this course with our others courses on Kinesis, AWS, Kafka and Cassandra.

Check out all of our SMACK training

More info

Cloudurableâ„¢ provides:

Contact us

For more details on the subscription support or pricing please contact us or call ((415) 758-1113) or write info@cloudurable.com.