PostgreSQL for Developer - up1/training-courses GitHub Wiki

PostgreSQL for Developer

  • 2 days

Software requirement

  • Docker
  • PostgreSQL
  • VS Code
  • Programming language
    • .NET
    • Java
    • NodeJS

Day 1

  • Database Management System
  • ทำความเข้าใจเกี่ยวกับ Data model ของการจัดการข้อมูล
    • Relational
    • NoSQL
      • Key-value
      • Document-based
      • Column-based
      • Graph
      • Time-serie
      • Search - Vector
  • หลักการในการออกแบบ Relational Database Model
    • ชุดคำสั่งพื้นฐานของ SQL
      • การสร้าง table, constraint (Nullable, Not null, Unique) - Data types ต่าง ๆ เช่น NULL value,
      • การใช้งาน CRUD(Create, READ, Update, Delete) operation
      • การจัดการความสัมพันธ์ระหว่าง table
        • One-to-one
        • One-to-many
        • Many-to-many
      • การใช้งาน Index สำหรับการปรับปรุงประสิทธิภาพของการดึงข้อมูล
      • ชุดคำสั่งพื้นฐานของการดึงข้อมูล
        • SELECT and Sub-query
        • Filtering with Conditions (WHERE)
        • Aggregate Functions (Count, Sum, Average) with Summarizing Data (GROUP BY)
        • Joins with relationships (JOINS)
        • Data Manipulation and Transformation (CASE)
        • Summarize data
        • Manage transaction
    • Normalization vs Denormalization
    • Design for read and Design for write
  • Workshop
    • Develop application with database

Day 2

  • Index types in PostgreSQL and how to use ?
  • Workshop with use cases
    • Create data into database
    • Query with complex data
    • Explain query
    • Tuning query and database
  • Best practices to improve performance and scaling database
    • Data modeling (read vs write)
    • Tuning SQL query
    • Manage connection pool
    • Caching data
    • Partitioning data
    • Sharding data
  • Working with Connection pools
    • Improve performance
    • Working with pgPool
    • Workshop
  • Working with caching data
    • Types of caching
    • Working with Redis
    • Workshop