The DynamoDB Book
Book information
Description
This book teaches a strategy-driven approach for designing your tables. You will learn strategies for handling: - One-to-many relationships - Many-to-many relationships - Complex filtering requirements - Aggregations - Uniqueness The DynamoDB Book Table of Contents Preface Acknowledgements Foreword Chapter 1. What is DynamoDB? 1.1. Key Properties of DynamoDB 1.2. When to use DynamoDB 1.3. Comparisons to other databases Chapter 2. Core Concepts in DynamoDB 2.1. Basic Vocabulary 2.2. A Deeper Look: Primary keys and secondary indexes 2.3. The importance of item collections 2.4. Conclusion Chapter 3. Advanced Concepts 3.1. DynamoDB Streams 3.2. Time-to-live (TTL) 3.3. Partitions 3.4. Consistency 3.5. DynamoDB Limits 3.6. Overloading keys and indexes 3.7. Conclusion Chapter 4. The Three API Action Types 4.1. Item-based actions 4.2. Query 4.3. Scan 4.4. How DynamoDB enforces efficiency 4.5. Conclusion Chapter 5. Using the DynamoDB API 5.1. Learn how expression names and values work 5.2. Don’t use an ORM 5.3. Understand the optional properties on individual requests 5.4. Summary Chapter 6. Expressions 6.1. Key Condition Expressions 6.2. Filter Expressions 6.3. Projection expressions 6.4. Condition Expressions 6.5. Update Expressions 6.6. Summary Chapter 7. How to approach data modeling in DynamoDB 7.1. Differences with relational databases 7.2. Steps for Modeling with DynamoDB 7.3. Conclusion Chapter 8. The What, Why, and When of Single-Table Design in DynamoDB 8.1. What is single-table design 8.2. Downsides of a single-table design 8.3. When not to use single-table design 8.4. Conclusion Chapter 9. From modeling to implementation 9.1. Separate application attributes from your indexing attributes 9.2. Implement your data model at the very boundary of your application 9.3. Don’t reuse attributes across multiple indexes 9.4. Add a 'Type' attribute to every item 9.5. Write scripts to help debug access patterns 9.6. Shorten attribute names to save storage 9.7. Conclusion Chapter 10. The Importance of Strategies Chapter 11. Strategies for one-to-many relationships 11.1. Denormalization by using a complex attribute 11.2. Denormalization by duplicating data 11.3. Composite primary key + the Query API action 11.4. Secondary index + the Query API action 11.5. Composite sort keys with hierarchical data 11.6. Summary of one-to-many relationship strategies Chapter 12. Strategies for many-to-many relationships 12.1. Shallow duplication 12.2. Adjacency list 12.3. Materialized graph 12.4. Normalization and multiple requests 12.5. Conclusion Chapter 13. Strategies for filtering 13.1. Filtering with the partition key 13.2. Filtering with the sort key 13.3. Composite sort key 13.4. Sparse indexes 13.5. Filter Expressions 13.6. Client-side filtering 13.7. Conclusion Chapter 14. Strategies for sorting 14.1. Basics of sorting 14.2. Sorting on changing attributes 14.3. Ascending vs. descending 14.4. Two relational access patterns in a single item collection 14.5. Zero-padding with numbers 14.6. Faking ascending order 14.7. Conclusion Chapter 15. Strategies for Migrations 15.1. Adding new attributes to an existing entity 15.2. Adding a new entity type without relations 15.3. Adding a new entity type into an existing item collection 15.4. Adding a new entity type into a new item collection 15.5. Joining existing items into a new item collection 15.6. Using parallel scans 15.7. Conclusion Chapter 16. Additional strategies 16.1. Ensuring uniqueness on two or more attributes 16.2. Handling sequential IDs 16.3. Pagination 16.4. Singleton items 16.5. Reference counts 16.6. Conclusion Chapter 17. Data modeling examples 17.1. Notes on the data modeling examples 17.2. Conclusion Chapter 18. Building a Session Store 18.1. Introduction 18.2. ERD and Access Patterns 18.3. Data modeling walkthrough 18.4. Conclusion Chapter 19. Building an e-commerce application 19.1. Introduction 19.2. ERD and Access Patterns 19.3. Data modeling walkthrough 19.4. Conclusion Chapter 20. Building Big Time Deals 20.1. Introduction 20.2. ERD & Access Patterns 20.3. Data modeling walkthrough 20.4. Conclusion Chapter 21. Recreating GitHub’s Backend 21.1. Introduction 21.2. ERD & Access Patterns 21.3. Data modeling walkthrough 21.4. Conclusion Chapter 22. Handling Migrations in our GitHub example 22.1. Introduction 22.2. ERD & Access Patterns 22.3. Data modeling walkthrough 22.4. Conclusion
Similar books
Infrastructure-as-Code Automation Using Terraform, Packer, Vault, Nomad and Consul: Hands-on Deployment, Configuration, and Best Practices
2021 · PDF
Infrastructure-as-Code Automation Using Terraform, Packer, Vault, Nomad and Consul: Hands-on Deployment, Configuration, and Best Practices
2021 · EPUB
Programming AWS Lambda: Build and Deploy Serverless Applications with Java
2020 · PDF
AWS Certified SysOps Administrator Study Guide: Associate (SOA-C01) Exam 2nd Edition
2020 · EPUB
Aws Certified Cloud Practitioner Study Guide: Clf-C01 Exam
2019 · PDF
Machine Learning with AWS
2018 · PDF
The DynamoDB Book
2020 · EPUB
MySQL® Notes for Professionals book
2018 · PDF