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

Financial Sustainability: The Numbers side of Social Enterprise
+Acumen via NovoEd
Cloud Computing Concepts: Part 2
University of Illinois at Urbana-Champaign via Coursera
Developing Repeatable ModelsĀ® to Scale Your Impact
+Acumen via Independent
Managing Microsoft Windows Server Active Directory Domain Services
Microsoft via edX
Introduction aux conteneurs
Microsoft Virtual Academy via OpenClassrooms