Reliable, Scalable, Maintainable Database Applications
Andrew Atkinson

#PostgreSQL
#Rails
#Docker
Build faster, more reliable Rails apps by taking the best advanced PostgreSQL and Active Record capabilities, and using them to solve your application scale and growth challenges. Gain the skills needed to comfortably work with multi-terabyte databases, and with complex Active Record, SQL, and specialized Indexes. Develop your skills with PostgreSQL on your laptop, then take them into production, while keeping everything in sync. Make slow queries fast, perform any schema or data migration without errors, use scaling techniques like read/write splitting, partitioning, and sharding, to meet demanding workload requirements from Internet scale consumer apps to enterprise SaaS.
Deepen your firsthand knowledge of high-scale PostgreSQL databases and Ruby on Rails applications with dozens of practical and hands-on exercises. Unlock the mysteries surrounding complex Active Record. Make any schema or data migration change confidently, without downtime. Grow your experience with modern and exclusive PostgreSQL features like SQL Merge, Returning, and Exclusion constraints. Put advanced capabilities like Full Text Search and Publish Subscribe mechanisms built into PostgreSQL to work in your Rails apps. Improve the quality of the data in your database, using the advanced and extensible system of types and constraints to reduce and eliminate application bugs. Tackle complex topics like how to improve query performance using specialized indexes. Discover how to effectively use built-in database functions and write your own, administer replication, and make the most of partitioning and foreign data wrappers. Use more than 40 well-supported open source tools to extend and enhance PostgreSQL and Ruby on Rails. Gain invaluable insights into database administration by conducting advanced optimizations - including high-impact database maintenance - all while solving real-world operational challenges.
Take your new skills into production today and then take your PostgreSQL and Rails applications to a whole new level of reliability and performance.
What You Need:
Table of Contents
Part I-Getting Started
1. An App to Get You Started
Part II-Design and Build
2. Administration Basics
3. Building a Performance-Testing Database
4. Data Correctness and Consistency
Part III-Operate and Grow
5. Modifying Busy Databases Without Downtime
6. Optimizing Active Record
7. Improving Query Performance
8. Optimized Indexes for Fast Retrieval
9. High-Impact Database Maintenance
10. Reaching Greater Concurrency
Part IV-Optimize and Scale
11. Scalability of Common Features
12. Working with Bulk Data
13. Scaling with Replication and Sharding
14. Boosting Performance with Partitioning
Part V-Advanced Usages
15. Advanced Uses and What's Next
A1. The Administrator's Field Guide
A2. Why psql?
A3. Getting Help
About the Author
Andrew Atkinson has worked as a Software Engineer with Ruby on Rails and PostgreSQL for more than a decade. At Microsoft, Groupon, and various startups, he's built, mentored, and influenced teams, and operated and scaled systems, improving their quality and reliability. He's presented on PostgreSQL and Ruby on Rails at conferences, appeared on podcasts, and has written for the official Ruby on Rails weblog, with the goal of helping developers solve their challenges using these powerful open source technologies.









