Designing Databases on AWS Resources
Module 1
- Understanding the CAP Theorem: https://dzone.com/articles/understanding-the-cap-theorem
- Why the PIE Theorem is More Relevant than the CAP Theorem: https://www.alexdebrie.com/posts/choosing-a-database-with-pie/
- ACID vs. BASE: The Shifting pH of Database Transaction Processing: https://www.dataversity.net/acid-vs-base-the-shifting-ph-of-database-transaction-processing/#
Videos
- Databases on AWS: The Right Tool for the Right Job (AWS re:Invent 2018): https://www.youtube.com/watch?v=-pb-DkD6cWg&t=535s
- Building with Purpose-Built Databases: Match Your Workload to the Right Database (AWS Public Sector Summit 2019): https://www.youtube.com/watch?v=Y2KnmHhyvc0&t=1653s
- Matching the Database to the Workload (AWS re:Invent 2018) https://www.youtube.com/watch?v=hwnNbLXN4vA. Discussion about the Iron Triangles begins at 11:30.
DIgital Courses
- Database Offerings: https://www.aws.training/Details/Curriculum?id=38111
- Data Analytics Fundamentals: https://www.aws.training/Details/eLearning?id=35364
Module 3
- Intuit Mint Case Study: https://aws.amazon.com/solutions/case-studies/intuit-mint/
Module 4
- Migrating Databases to AWS: https://docs.aws.amazon.com/dms/latest/sbs/CHAP_Introduction.html
- AWS Database Freedom: https://aws.amazon.com/solutions/databasemigrations/database-freedom/
- Build a Modern Application with Purpose-Built AWS Databases: https://aws.amazon.com/blogs/database/building-a-modern-application-with-purpose-built-aws-databases/
Databases on Amazon RDS
Product page: https://aws.amazon.com/rds/
User Guide: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html
- How Amazon RDS on VMware Works: https://blogs.vmware.com/vsphere/2019/10/how-amazon-rds-on-vmware-works.html
- Limitations of Amazon RDS Encrypted DB Instance:
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Encryption.html#Overview.Encryption.Limitations
videos
Introduction to Amazon RDS on VMware: https://www.youtube.com/watch?v=Pd5m19ohFrI
Amazon Relational Database Service: https://www.youtube.com/watch?v=igRfulrrYCo&t
DAT203 – What’s New in Amazon RDS: https://www.youtube.com/watch?v=HuvUD7-RyoU
Digital courses
Amazon RDS Service Primer: https://www.aws.training/Details/eLearning?id=36999
Databases in Amazon Aurora
Product Page: https://aws.amazon.com/rds/aurora/
User Guide: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_GettingStartedAurora.html
- Working with Parallel Query for Amazon Aurora MySQL: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-mysql-parallel-query.html
- Single-Master Replication with Amazon Aurora MySQL: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Replication.html
- Replicating Amazon Aurora MySQL DB Clusters Across AWS Regions: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Replication.CrossRegion.html
- Working with Aurora Multi-Master Clusters: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-multi-master.html
- Conflict Resolution for Multi-Master Clusters https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-multi-master.html#aurora-multi-master-conflicts
- Replication with Amazon Aurora: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Replication.html
- The following article was an important piece to helping the students understand the separation between Compute and Storage: https://aws.amazon.com/blogs/database/amazon-aurora-under-the-hood-quorum-reads-and-mutating-state/
- The ability to use up to five secondary clusters is new as of re:Invent 2019. For more information see: https://aws.amazon.com/about-aws/whats-new/2019/11/aurora-global-database-supports-multiple-secondary-regions/
videos
- Migrating live Pokemon data to Aurora PostgreSQL: https://www.youtube.com/watch?v=2eEKuK5eOC4&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=81
- Aurora storage demystified: https://www.youtube.com/watch?v=uaQEGLKtw54&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=145
- Aurora Serverless: https://www.youtube.com/watch?v=9mTwxghXvlE&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=170
digital courses
Amazon Aurora Service Primer: https://www.aws.training/Details/eLearning?id=36849
Databases in Amazon DocumentDB
Product Page: https://aws.amazon.com/documentdb/
User Guide: https://docs.aws.amazon.com/documentdb/latest/developerguide/what-is.html
- Managing Amazon DocumentDB Endpoints: https://docs.aws.amazon.com/documentdb/latest/developerguide/endpoints.html
- Connecting to Endpoints: https://docs.aws.amazon.com/documentdb/latest/developerguide/endpoints-connecting.html
- Read Preference Options: https://docs.aws.amazon.com/documentdb/latest/developerguide/how-it-works.html#durability-consistency-isolation
- Connecting to Amazon DocumentDB as a Replica Set: https://docs.aws.amazon.com/documentdb/latest/developerguide/connect-to-replica-set.html
- Backing Up and Restoring in Amazon DocumentDB: https://docs.aws.amazon.com/documentdb/latest/developerguide/backup-restore.html
- Getting started with Amazon DocumentDB: https://aws.amazon.com/documentdb/getting-started/
- MongoDB replica sets, reference this link: https://docs.mongodb.com/manual/tutorial/deploy-replica-set/
videos
- Migrating your databases to DocumentDB: https://www.youtube.com/watch?v=qmb7ssDH6Pg&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=28
- Deep Dive on DocumentDB: https://www.youtube.com/watch?v=D3_hWN9C9iE&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=160
digital courses
Amazon DocumentDB Service Primer: https://www.aws.training/Details/eLearning?id=36852
Amazon DynamoDB Tables
Product Page: https://aws.amazon.com/dynamodb/?nc2=h_ql_prod_db_ddb
User Guide: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html
- Local Secondary Indexes: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/LSI.html
- Global Secondary Indexes: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GSI.html
- How to Design Amazon DynamoDB Global Secondary Indexes: https://aws.amazon.com/blogs/database/how-to-design-amazon-dynamodb-global-secondary-indexes/
- First Steps for Modeling Relational Data in DynamoDB: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-modeling-nosql.html
- NoSQL Design for DynamoDB: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-general-nosql-design.html
- Designing Partition Keys to Distribute Your Workload Evenly: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-partition-key-uniform-load.html
- Identity and Access Management in DAX: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DAX.access-control.html
- Building Modern Apps Using Amazon DynamoDB Transactions: https://collaborate-corp.amazon.com/nuxeo/nxfile/default/20a246c9-5a13-4ae0-aa14-4951383f9559/blobholder:0
- NoSQL Workbench for Amazon DynamoDB https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/workbench.html
- DynamoDB Streams Use Cases and Design Patterns https://aws.amazon.com/blogs/database/dynamodb-streams-use-cases-and-design-patterns/
- Simplifying Database Caching with DynamoDB Accelerator (DAX): https://aws.amazon.com/blogs/aws/amazon-dynamodb-accelerator-dax-in-memory-caching-for-read-intensive-workloads/
videos
- Deep Dive DynamoDB: https://www.youtube.com/watch?v=6yqfmXiZTlM&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=40
- Verizon, Push Notification system with DynamoDB: https://www.youtube.com/watch?v=FwWT6a3ikZ4&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=76
- Moving from Cassandra to DynamoDB: https://www.youtube.com/watch?v=DInYm0YWS4w&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=99
- Uber implements Ledgers in DynamoDB: https://www.youtube.com/watch?v=iN6mhI5hFt4&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=105
- Adaptive Capacity: https://www.youtube.com/watch?v=zUsJK5pe_A0&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=146
- Data Modeling with DynamoDB: https://www.youtube.com/watch?v=DIQVJqiSUkE&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=164
- Good episode on Estimating the Cost of Using DynamoDB: https://www.twitch.tv/aws/video/498613939
digital course
Amazon DynamoDB Service Primer: https://www.aws.training/Details/eLearning?id=36858
Databases in Amazon Neptune
Product Page: https://aws.amazon.com/neptune/?nc2=h_ql_prod_db_nep
User Guide: https://docs.aws.amazon.com/neptune/latest/userguide/intro.html
- Accessing the Neptune Graph with Gremlin: https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-gremlin.html
- Accessing the Neptune Graph with SPARQL: https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-sparql.html
- Apache TinkerPop: The Gremlin Graph Traversal Machine and Language: https://tinkerpop.apache.org/gremlin.html
- SPARQL Query Language for RDF: https://www.w3.org/TR/rdf-sparql-query/
- Load Balancing Across Read Replicas: https://docs.aws.amazon.com/neptune/latest/userguide/best-practices-general-basic.html#best-practices-general-loadbalance
- Overview of Backing Up and Restoring a Neptune DB Cluster https://docs.aws.amazon.com/neptune/latest/userguide/backup-restore-overview.html#backup-restore-overview-restore
videos
- Real world customer use cases with Neptune: https://www.youtube.com/watch?v=6dHiJSMdbjc&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=13
- Deep Dive Amazon Neptune: https://www.youtube.com/watch?v=dSqNAlYAAoQ&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=144
Digital course
Amazon Neptune Service Primer: https://www.aws.training/Details/eLearning?id=36902
Databases in Amazon QLDB
Product Page: https://aws.amazon.com/qldb/
User Guide: https://docs.aws.amazon.com/qldb/latest/developerguide/what-is.html
- Inserting Documents: https://docs.aws.amazon.com/qldb/latest/developerguide/working.create.html#working.create.insert
- Updating and Deleting Documents: https://docs.aws.amazon.com/qldb/latest/developerguide/working.revisions.html
- History Function: https://docs.aws.amazon.com/qldb/latest/developerguide/working.history.html#working.history.function
- Querying Revision History: https://docs.aws.amazon.com/qldb/latest/developerguide/working.history.html
- Using Amazon QLDB with Interface VPC Endpoints: https://docs.aws.amazon.com/qldb/latest/developerguide/vpc-endpoints.html
- Interface VPC Endpoints (AWS PrivateLink): https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html
- Journal Export Output in QLDB: https://docs.aws.amazon.com/qldb/latest/developerguide/export-journal.output.html
videos
- Adding Managed BlockChain and QLDB to your portfolio: https://www.youtube.com/watch?v=bmNBD_q38XU&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=102
- Deep Dive QLDB: https://www.youtube.com/watch?v=ZfYDl4kaVCo&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=107
- PartiQL language: https://www.youtube.com/watch?v=ZsEOhCOFOe4&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=157
digital course
Amazon QLDB Service Primer: https://www.aws.training/Details/eLearning?id=41760
Databases in Amazon ElastiCache
Product Page: https://aws.amazon.com/elasticache/
Redis User Guide: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/WhatIs.html
Memcached User Guide: https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/WhatIs.html
- Amazon ElastiCache: Comparing Redis and Memcached https://aws.amazon.com/elasticache/redis-vs-memcached/
- AWS Service Limits: Amazon ElastiCache https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_elasticache
- Amazon ElastiCache for Redis User Guide: Caching Strategies: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Strategies.html
- Amazon ElastiCache for Memcached User Guide: Caching Strategies: https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/Strategies.html
- Amazon ElastiCache for Memcached User Guide: Choosing Your Node Size: https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/nodes-select-size.html
- Amazon ElastiCache for Memcached User Guide: Configuring Your ElastiCache Client for Efficient Load Balancing: https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/BestPractices.LoadBalancing.html
- Scaling ElastiCache for Memcached Clusters page https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/Scaling.html
- Amazon ElastiCache for Redis User Guide: Working with Shards: https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Shards.html
- Redis Sharding: Sharding (Partitioning) Schemes https://www.javacodegeeks.com/2015/09/redis-sharding.html#sharding_(partitioning)_schemes
videos
- What’s new with ElastiCache, 2019: https://www.youtube.com/watch?v=SaGW_Bln3qA&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=20
- Supercharge Real-time apps with ElastiCache: https://www.youtube.com/watch?v=v0GfpL5jfns&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=79
digital course
Amazon ElastiCache ServicePrimer: https://www.aws.training/Details/eLearning?id=36893
Data Warehouses in Amazon Redshift
Product Page: https://aws.amazon.com/redshift/?nc2=h_ql_prod_db_rs
Management Guide: https://docs.aws.amazon.com/redshift/latest/mgmt/welcome.html
Developer Guide: https://docs.aws.amazon.com/redshift/latest/dg/welcome.html
- Data Warehouse System Architecture: https://docs.aws.amazon.com/redshift/latest/dg/c_high_level_system_architecture.html
- Clusters and Nodes in Amazon Redshift: https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html#rs-about-clusters-and-nodes
- Twelve Best Practices for Amazon Redshift Spectrum: https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/
- Using Redshift Spectrum with AWS Lake Formation: https://docs.aws.amazon.com/redshift/latest/dg/spectrum-lake-formation.html
- Implementing Workload Management: https://docs.aws.amazon.com/redshift/latest/dg/cm-c-implementing-workload-management.html
- Working with Short Query Acceleration: https://docs.aws.amazon.com/redshift/latest/dg/wlm-short-query-acceleration.html
- Designing Tables: https://docs.aws.amazon.com/redshift/latest/dg/t_Creating_tables.html
- Columnar Storage: https://docs.aws.amazon.com/redshift/latest/dg/c_columnar_storage_disk_mem_mgmnt.html
- Choosing a Column Compression Type: https://docs.aws.amazon.com/redshift/latest/dg/t_Compressing_data_on_disk.html
- AWS Service Endpoints: Amazon Redshift: https://docs.aws.amazon.com/general/latest/gr/redshift-service.html
videos
- What’s new with Redshift, 2019, featuring Yelp: https://www.youtube.com/watch?v=sCEhmBnQ7M0&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=19
- What’s new with Redshift, 2019, featuring Workday: https://www.youtube.com/watch?v=lN6tfUX4CcE&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=119
- Deep Dive Best Practices of Redshift: https://www.youtube.com/watch?v=lj8oaSpCFTc&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=106
- How to scale Analytics with Redshift: https://www.youtube.com/watch?v=V9r_sP2-zzs&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=110
- Build a data analytics stack with Redshift: https://www.youtube.com/watch?v=svj3srbhfUw&list=PLi54SL9oKOa40QnHrdXb1xYQAMa2N6h5k&index=172
digital course
Amazon Redshift Service Primer: https://www.aws.training/Details/eLearning?id=36901
Read more →