YoVDO

Designing Highly Scalable and Highly Available SQL Databases

Offered By: LinkedIn Learning

Tags

SQL Courses DevOps Courses Relational Databases Courses Database Design Courses Data Modeling Courses Scalability Courses High Availability Courses Data Ingestion Courses Database Architecture Courses

Course Description

Overview

Get a holistic overview of the essential elements of designing and implementing highly scalable and available relational databases.

Syllabus

Introduction
  • Challenges to scaling relational databases
  • What you should know
1. Understanding Scalability Requirements
  • Business requirements for database scalability
  • Identify use cases for data
  • Identify security and compliance requirements
  • Estimate data growth
  • Challenge: Identify business requirements in a scenario
  • Solution: Identify business requirements in a scenario
2. Database Architecture and Relational Databases
  • Choose a datastore: SQL, NoSQL, or analytical?
  • Identify schemas
  • Identify key entities
  • High-level physical design
  • Challenge: Revised database architecture
  • Solution: Revised database architecture
3. Data Ingestion
  • Human-scale and machine-scale data
  • Different data ingestion strategies
  • Designing scalable user interfaces
  • Message queues to buffer ingested data
  • Data modeling for scale: Event sourcing
  • Distributing workload: Command Query Response Separation (CQSR)
  • Challenge: Services and APIs for a scable user interface
  • Solution: Services and APIs for a scable user interface
4. Designing for Scalable Querying
  • Transactional vs. analytical queries
  • Indexing for transactional queries
  • Materialized views for transactional queries
  • Using read replicas to improve query performance
  • Understanding write-ahead logging
  • Denormalizing for analytical queries
  • Aggregation and sampling for analytical queries
  • Challenge: Optimize a data model for an analytical queries
  • Solution: Optimize a data model for an analytical queries
5. DevOps for Scalable Relational Databases
  • Monitoring relational databases
  • Reducing latency with caching
  • Partitioning for scalability
  • High-availability architectures
  • Data lifecycle management
  • Challenge: Understanding database DevOps
  • Solution: Understanding database DevOps

Taught by

Dan Sullivan

Related Courses

Advanced Data Science Capstone
IBM via Coursera
Amazon Aurora MySQL - Basics (Japanese)
Amazon Web Services via AWS Skill Builder
Amazon DynamoDB – Architecture and Features (Simplified Chinese)
Amazon Web Services via AWS Skill Builder
Amazon Elastic Container Service (ECS) Primer (Italian)
Amazon Web Services via AWS Skill Builder
Amazon GameLift Primer (French)
Amazon Web Services via AWS Skill Builder