PostgreSQL for Database Developers
Description
PostgreSQL is a powerful, open-source object-relational database management system that emphasizes extensibility, data integrity, and high performance. Its versatility and robust feature set make it an ideal choice for developers working on projects of all sizes, from small-scale applications to enterprise-level systems. By learning PostgreSQL, developers can tap into its advanced capabilities, such as full-text search, spatial data support, and customizable data types, allowing them to create efficient and scalable solutions tailored to their unique needs.
PostgreSQL for Database Developers is a three-day hands-on course that explores the fundamentals of database management, covering everything from installation and management to advanced SQL functions. Designed for beginners and enthusiasts alike, this course will equip you with the knowledge and skills required to effectively harness the power of PostgreSQL in today's data-driven landscape.
Throughout the course you’ll be immersed in a variety of essential topics, such as understanding data types, creating and managing indexes, working with array values, and optimizing queries for improved performance. You’ll gain valuable hands-on experience with real-world exercises, including the use of the psql client, writing triggers and stored procedures with PL/pgSQL, and exploring advanced SQL functions like Common Table Expressions (CTE), Window Functions, and Recursive Queries. You’ll exit this course with a solid foundation in PostgreSQL, enabling you to confidently navigate and manage your databases with ease and efficiency.
Lesson 1. Installing & Managing PostgreSQL
- PostgreSQL installation process
- Optimal configuration settings
- User and role management
- Database backup and restoration
Lesson 2. Overview of PostgreSQL Database
- PostgreSQL architecture overview
- Understanding database objects
- Efficient data storage
- Transaction management basics
Lesson 3. Using the psql client
- Introduction to psql
- Essential psql commands
- Executing queries effectively
- Managing databases with psql
Lesson 4. Understanding PostgreSQL data types
- Numeric data types explored
- Character and binary types
- Date, time, and boolean values
- Array and other types
Lesson 5. Understanding sequences
- Sequence creation and usage
- Customizing sequence behavior
- Implementing auto-increment columns
- Sequence manipulation and control
Lesson 6. Creating & managing indexes
- PostgreSQL index fundamentals
- Designing partial indexes
- Utilizing expression-based indexes
- Index management techniques
Lesson 7. Using COPY to load data
- COPY command overview
- Importing and exporting data
- Handling CSV and binary formats
- Performance considerations
Lesson 8. Working with Array Values
- Array value basics
- Array manipulation functions
- Querying arrays efficiently
- Multidimensional array handling
Lesson 9. Advanced SQL Functions
- Mastering Common Table Expressions
- Utilizing Window Functions
- Regular Expressions in SQL
- Crafting Recursive Queries
Lesson 10. Writing triggers & stored procedures with PL/pgSQL
- PL/pgSQL variables usage
- Implementing loop operations
- PERFORM and EXECUTE statements
- Developing PostgreSQL triggers
Lesson 11. Using the PostgreSQL query optimizer
- Query analysis and optimization
- EXPLAIN command insights
- PostgreSQL query operators
- Identifying performance bottlenecks
Lesson 12. Improving query performance
- Query performance tuning
- Index optimization strategies
- Efficient database partitioning
- Connection and resource management
Lesson 13. Wrap Up & Additional Resources
- Further learning opportunities
- Staying up-to-date with PostgreSQL
- Community engagement and support