Let’s Architect! Architecting with Amazon DynamoDB
AWS Architecture BlogLet’s Architect! Architecting with Amazon DynamoDBby Luca Mezzalira, Laura Hyatt, Vittorio Denti, and Zamira Jaupaj | on22 NOV 2022| inAmazon DynamoDB,Architecture|Permalink|ShareNoSQL databases are an essential part of the technology industry in today’s world. Why are we talking about NoSQL databases? NoSQL databases often allow developers to be in control of the structure of the data, and they are a good fit for big data scenarios and offer fast performance.In this issue ofLet’s Architect!, we exploreAmazon DynamoDBcapabilities and potential solutions to apply in your architectures. A key strength of DynamoDB is the capability of operating at scale globally; for instance, multiple products built by Amazon are powered by DynamoDB. DuringPrime Day 2022, the service also maintained high availability while delivering single-digit millisecond responses, peaking at 105.2 million requests-per-second. Let’s start!Data modeling with DynamoDBWorking with a new database technology means understanding exactly how it works and the best design practices for taking full advantage of its features.In this video, the key principles for modeling DynamoDB tables are discussed, plus practical patterns to use while defining your data models are explored and how data modeling for NoSQL databases (like DynamoDB) is different from modeling for traditional relational databases.With this video, you can learn about the main components of DynamoDB, some design considerations that led to its creation, and all the best practices for efficiently using primary keys, secondary keys, and indexes. Peruse the original paper to learn more about DyanamoDB inDynamo: Amazon’s Highly Available Key-value Store.Amazon DynamoDB uses partitioning to provide horizontal scalabilitySingle-table vs. multi-table in Amazon DynamoDBWhen considering single-table versus multi-table in DynamoDB, it is all about your application’s needs. It is possible to avoid naïve lifting-and-shifting your relational data model into DynamoDB tables. In this post, you will discover different use cases on when to use single-table compared with multi-table designs, plus understand certain data-modeling principles for DynamoDB.Use a single-table design to provide materialized joins in Amazon DynamoDBOptimizing costs on DynamoDB tablesInfrastructure cost is an important dimension for every customer. Despite your role inside an organization, you should monitor opportunities for optimizing costs, when possible.For this reason, we have created a guide on DynamoDB tables cost-optimization that provides several suggestions for reducing your bill at the end of the month.Build resilient applications with Amazon DynamoDB global tables: Part 1When you operate global systems that are spread across multiple AWS regions, dealing with data replication and writes across regions can be a challenge. DynamoDB global tables help by providing the performance of DynamoDB across multiple regions with data synchronization and multi-active database where each replica can be used for both writing and reading data.Another use case for global tables are resilient applications with the lowest possible recovery time objective (RTO) and recovery point objective (RPO). In this blog series, we show you how to approach such a scenario.Amazon DynamoDB active-active architectureSee you next time!Thanks for joining our discussion on DynamoDB. See you in a few weeks, when we explore cost optimization!Other posts in this seriesLet’s Architect! Architecting in health techLet’s Architect! Architecting with custom chips and acceleratorsLet’s Architect! Modern data architecturesLet’s Architect! Architecting for the edgeLet’s Architect! Architecting for SustainabilityLet’s Architect! Architecting for Machine LearningLet’s Architect! Architecting for SecurityLet’s Architect! Tools for Cloud ArchitectsLet’s Architect! Architecting for BlockchainLet’s Architect! Architecting microservices with containersLet’s Architect! Using open-source technologies on AWSLet’s Architect! Serverless architecture on AWSLet’s Architect! Creating resilient architectureLet’s Architect! Architecting for governance and managementLet’s Architect! Architecting for front endLet’s Architect! Understanding the build versus buy dilemmaLet’s Architect! Architecting for DevOpsLet’s Architect! Designing Well-Architected systemsLet’s Architect! Architecting for big data workloadsLooking for more architecture content?AWS Architecture Centerprovides reference architecture diagrams, vetted architecture solutions, Well-Architected best practices, patterns, icons, and more!TAGS:databases,DynamoDB,Let's Architect,multi-region,NoSQL,ResilienceLuca MezzaliraLuca is Principal Solutions Architect based in London. He has authored several books and is an international speaker. He lent his expertise predominantly in the solution architecture field. Luca has gained accolades for revolutionizing the scalability of front-end architectures with micro-frontends, from increasing the efficiency of workflows, to delivering quality in products.Laura HyattLaura Hyatt is a Solutions Architect for AWS Public Sector and helps Education customers in the UK. Laura helps customers not only architect and develop scalable solutions but also think big on innovative solutions facing the education sector at present. Laura's specialty is IoT, and she is also the Alexa SME for Education across EMEA.Vittorio DentiVittorio Denti is a Machine Learning Engineer at Amazon based in London. After completing his M.Sc. in Computer Science and Engineering at Politecnico di Milano (Milan) and the KTH Royal Institute of Technology (Stockholm), he joined AWS. Vittorio has a background in distributed systems and machine learning. He's especially passionate about software engineering and the latest innovations in machine learning science.Zamira JaupajZamira is an Enterprise Solutions Architect based in the Netherlands. She is highly passionate IT professional with over 10 years of multi-national experience in designing and implementing critical and complex solutions with containers, serverless, and data analytics for small and enterprise companies.
NoSQL databases are an essential part of the technology industry in today’s world. Why are we talking about NoSQL databases? NoSQL databases often allow developers to be in control of the structure of the data, and they are a good fit for big data scenarios and offer fast performance. In this issue of Let’s Architect!, […]
Luca Mezzalira
Amazon DynamoDB Architecture