Overview
Data is a fundamental pillar of modern software engineering. This section covers database fundamentals and practical data access tools used in production applications.
What You’ll Learn
- Databases - SQL fundamentals and PostgreSQL database management
- Data Tools - Object-relational mapping with Spring Data JPA and Elixir Ecto
Available Content
Databases
SQL - Master the standard language for relational databases
- Query fundamentals (SELECT, WHERE, JOIN)
- Data manipulation (INSERT, UPDATE, DELETE)
- Schema design and table relationships
- Indexing and query optimization
- Transactions and constraints
PostgreSQL - Advanced open-source relational database
- PostgreSQL-specific features and extensions
- JSON and advanced data types
- Window functions and CTEs
- Performance tuning and optimization
- Backup, recovery, and replication
Data Access Tools
Spring Data JPA - Java persistence framework
- Entity mapping and relationships
- Repository pattern for data access
- Query methods and JPQL
- Transaction management
- Integration with Spring Boot
Elixir Ecto - Elixir database wrapper and query generator
- Schema definitions and changesets
- Composable queries with Ecto.Query
- Migrations and schema evolution
- Multi-database support
- Association handling
Learning Approach
Each topic provides By Example tutorials with practical, runnable code:
- Beginner - Core concepts and basic operations
- Intermediate - Production patterns and optimization
- Advanced - Complex queries and performance tuning
Start with SQL fundamentals, then explore database-specific features and ORM tools for your language stack.
Getting Started
- SQL Fundamentals - Start here to learn database querying
- PostgreSQL - Explore advanced features
- Choose your ORM: Spring Data JPA for Java or Elixir Ecto for Elixir
Last updated