Home
Blogs
▾
General
Postgres
Comment
Events
FAQ
Favorites
▾
Articles
Books
Children
Documents
Hobbies
Movies
Music
Periodicals
Quotes
Sayings
Television
Videos
▾
Artistic
Humorous
Serious
News
Presentations
▾
PG Admin.
PG AI
PG Arch.
PG Extended
PG Internals
PG Pending
PG Perform.
PG Project
PG SQL
Open Source
Security
Sermons
General
Old
Selecting
Press
Résumé
Travel Map
Search
Contact
Private Area
⇽
⇽
Postgres Blog Index: Ordered Chronologically
View Detail
View Category Index
New Presentation
A Meetup Quiz?
Two Database Videos
Cleanup Time
Third Place
Three Interviews
New Presentation
Presentation Updates
Postgres 18 Release Notes
New User Management Presentation Online
Geopolitical Postgres
Wish I Was Wrong About
Tde
New AI Presentation Online
Specialized
Cpu
Instructions
In Praise of PostgreSQL
Multiply Time
Indexing
timestamp
s
Is
Sql
Good?
Transaction Block Isolation Levels
Lateral
Usage
Combining Queries into
Cte
s
All About
All
Scram
Is Here to Stay
Explaining the Postgres Query Optimizer
Improvements
Presentations from
Sql
Queries
Sharding Status
last_seq_scan and last_idx_scan
Query_id and pg_stat_statements
Postgres Music
Power-Loss Protection
Tde
Status Report
Peanut Butter and Chocolate
Data Gravity
The Relational Future Is Bright
Null
Presentation Updates
Railroad Diagrams
Oracle Supports Postgres
Transaction Processing Chapter
Setting Per-User Server Variables
Postgres 16 Features Presentation
Selecting Conferences
Leadership Abuse
Who's in Charge?
Email Etiquette
Supermarket Chicken
PostgreSQL Benefits and Challenges: A Snapshot
Community Edition
Open Source Bait and Switch: Licensing and Beyond
The Postgres Trajectory
Postgres 16 Release Notes
Dissecting Partitioning
Beyond Joins and Indexes
Thirty Years of Continuous PostgreSQL Development
Community Impact of 2nd Quadrant Purchase
The Economics of Open Source Contributions
Three Postgres Adoption Groups in Enterprises
Cloud Vendor Monetization of Open Source
Cloud Vendors as a Barrier
Developers in Front
The Berkeley 39
Postgres and the Artificial Intelligence Landscape
Why Not to Choose Postgres
Migrating Away from Hacks
Postgres in the Cloud: The Hard Way
Changing Cars, Changing Databases
The Inner Workings of Oracle Development
Development Methods
Why Database Software Is Unique
Standard Deviation
Keyset Pagination in Action
Keyset Pagination
Pagination Tips
Invalid Times
Differences Between Dates
Computing
Interval
Values
pgFormatter
Writing Style
Encryption at Rest
Passwords in Log files
Force Password Changes
Credential Rotation Using Certificates
Grouping Set
s and
Null
Values
Jsonb
: A Container of Types
Two Interviews
Postgres Marketing
Boolean Indexes
Global Indexes
Hardware Acceleration for Databases
Can Case Comparison Be Controlled?
Force One Row
Storing Binary Data in the Database
Dinner Q&A
Controlling Server Variables at Connection Time
Connect Parameter Specification Options
Controlling Connection Parameters Using Environment Variables
Safety Systems Can Reduce Safety
When Does a Commit Happen?
Lessons from the Online Conference Trenches
Visualizing Collations
What is an
Lsn
?
Taking Snapshots of Clusters Which Use Tablespaces
Moving Tables, Indexes, and Tablespaces Between Clusters
Why
Pgdata
Should Not Be at the Top of a Mount Point
Percona Live Online
Using Non-Login Roles
Draft of Postgres 13 Release Notes
Avoiding Cache Wipe, Synchronized Scans
Why Do We Freeze?
Postgres Internals Website
Portability's Surprising Win
With ... Materialized
and Optimizer Control
Background Writes
Optimal Use of
Ssd
s
Does Postgres Support Compression?
Multi-Host Technologies
Performance Limitations
Fast Enough?
No Travel
Database Interoperability at Risk
Databases, Containers, and the Cloud
Las Vegas Event at re:Invent
Implementing Transparent Data Encryption in Postgres
Release of pgcryptokey
Ibiza: A Different Type of Conference
The Democratization of Databases
Postgres 12 Features Presentation
Exploring Postgres Tips and Tricks
Updated Sharding Presentation
Draft of Postgres 12 Release Notes
The High Value of Data
Tool Vendor/Support Options
SQL Replay for Replication?
Lock-In Is Not a Binary Decision
Corporate Backing
Breaking Backward Compatibility
The Maze of Postgres Options
Trusted and Untrusted Languages
Order of
Select
Clause Execution
Imperative to Declarative to Imperative
Composite Values
At Time Zone
Confusion
PgLife for Familiarization
Expanding Permission Letters
Permission Letters
Limiting Superuser Activity
Postgres Encryption Maze
Pooler Authentication
Synchronizing Authentication
Insufficient Passwords
Removable Certificate Authentication
Three Factors of Authentication
Fourteen Authentication Methods
Sharding Update from Asia
Postgres vs PostgreSQL
Huge Pages
Getting Object Creation Time
Interview in China
Data in the Database vs the File System
Why Attend Conferences?
Blocking
Ddl
Speaking in China
Using
Xmin
in Queries
Percent_rank
vs.
Cumm_dist
Storing the Original Time Zone
PL/pgSQL's Good
Sql
Alignment
Identifier Case Sensitivity
Vectorize Surprise
Index Everything
Future Optimizer Enhancements
Partitioning in Postgres 10 and Beyond
A Hierarchical Read-Scaling Architecture
Materialized Views and Foreign Data Wrappers
A New Pgindent
PG-C
Tuning Autovacuum
Limiting Memory to Avoid the
Oom
Compressed Tablespaces
Using Docker with Postgres
Session State Failover
Logical Replication
Wal
Archive: Local or Remote?
The Hot Standby Tradeoff
Sent, Write, Flush, Replay?
Recent Interview
The Decline of Hstore
Postgres Party
Playing With IPv6
Odd Month Arithmetic
Use
With Time Zone
PL/Java Adoption
When To Use Server-Side Logic
Which NoSQL Database For New Project?
You Don't Need Every Feature of Your Previous Database
Raw Device Optimization
Double Buffering Blues
Tablespaces on Transient Storage
Ssd
s and
effective_io_concurrency
Reorganized Presentations
Raid
Controllers and
Ssd
s
Postgres Window Magic
Postgres 10 Features Presentation
Draft of Postgres 10 Release Notes
Das
vs
San
vs
Nas
External Poolers
Switchover vs. Failover
Incremental File System Backup
What Are Checkpoints?
Wal
Archive Management
Inside the
Wal
Postgres Keywords
Casting to Data Types
Allowing Only One Null
Use All Your Constraints
Referencing
Select
Column Aliases in
Where
Clauses
Characters Sets, Encodings, and Collations
Outer Joins and
Where
Clauses
"You need to set a tone where everyone in the community feels valued"
Column Storage Internals
Getting the Most Out of
application_name
Dynamic Logging Control
Postgres Alerts
Wait Event Reporting
Creating Descending Indexes
Index Order Does Matter
Expression Index Statistics and Joins
Statistics on Expression Indexes
Still No Query Hints?
Going Deep on Stats
Performance Goalposts
Postgres Gives Developers More Options with NoSQL
Creating Extensions in Schemas
Beware of Antivirus Software with Postgres
Updated Blog Categories, Images
Two More Interviews
Moscow Interview
Using
Ssl
Certificates
Creating
Ssl
Certificates
Ssl
Certificates and Certificate Authorities
Use Kill -9 Only in Emergencies
Controlling Autovacuum
Visualizing Postgres Feature Growth
PgPool Improves Reliability
PgLife Is Six Months Old
New Presentations
Explain
Output Generates Enthusiastic Applause
Five Events
Postgres 9.3 Release Notes Updated
What Are Timelines?
Salesforce Abandoning Postgres Migration?
How Managers View Postgres
Upcoming Conferences
Done Studying Perl
PGCon Conference Report
New Presentation Online
PgCon Developer Meeting Concluded
Video Interview
PgLife Averages Thirty Active Users
PgLife Is Now Live
9.3 Release Notes Ready for Beta
Starting on 9.3 Release Notes
Matching Client and Server Constraints
Dynamic Columns
Pg_Upgrade Now Handles Invalid Indexes
Twenty-One Hours to Exploit
Partial Indexes
Expression Indexes
All Operators Call Functions
Passing Arguments to Functions
Creating Virtual Columns
Good Enough?
Postgres Is Good Enough
Postgres as a Data Platform
Conference Report
Table Partitioning Needs Improvement
The Middleware Porting Challenge
The Future of Relational Databases
Parallelism Roadmap
Null
Summary (Part 11/11)
Null
s in Arrays and
Row
Expressions (Part 10/11)
Handling Growth with Postgres: 5 Tips From Instagram
Mapping
Null
s to Strings (Part 9/11)
Null
s and Aggregates (Part 8/11)
Ordering and Indexing
Null
s (Part 7/11)
Comparing
Null
s (Part 6/11)
Pg_Upgrade Now Supports Parallel Copy/Link
The
Not In
Null
Trap (Part 5/11)
The Three-Valued Logic of
Null
s (Part 4/11)
The Non-Value of
Null
s (Part 3/11)
Pg_Upgrade Faster, Again!
Explicit and Implicit
Null
Generation (Part 2/11)
Null
s Make Things Easier? (Part 1/11)
Postgres: The B-52 of Databases
"You Lock Your Data in Postgres — We Cannot Fail"
Pg_Upgrade Bug with Invalid Concurrently-Created Indexes
Programatic Control of postgresql.conf Settings
My Blog Changes
Pg_Upgrade Performance Improvements
Conference Report
You Added What
Json
Features in Postgres 9.2?
The 9.2 Sleeper Feature
Video of Postgres 9.2 Features
The Backend Flowchart Is Back
Lots O' Conferences
Reload Is Powerful
Upcoming Conferences
Unix Domain Socket Location
Centralizing Connection Parameters
Monitoring Postgres from the Command Line
Turn off the drive write cache! Turn on the cache! Huh?
250
Tps
99.9% Useful
Memory Overcommit
I Don't Need Swap Space
Generating Random Data Via
Sql
Want a Free Remote Database?
PostgreSQL's Place in the New World Order
Recruiters A'Callin
The Externality of Index Creation
Dud, Flood, & Bud
Matching Client and Server Languages
Celko Speaking in Prague
I Feel Sorry for Closed-Source Developers
Teaching Again at Drexel
Postgres Developer Meetings
Vacation, What Vacation?
Postgres Pool Party
So You Want to Be a Committer?
What Are
Oids
The Double Quote Trap
What Makes a Great Conference Site
Speaking in the Dominican Republic
Timing Query Internals
Timing a Query
Cluster, Cluster, Schema, Schema
Transactional
Ddl
I Don't Need Backups, I Use
Raid1
!
Speeding Up by Condensing
Automatic Upgrades?
The Evolution of Pg_Upgrade
Report from PGCon
Parallel Query Report from the PGCon Developer Meeting
Template1 Me!
Postgres 9.2 Draft Release Notes Published
Postgres Drinking Game
The Effectiveness of
effective_cache_size
Starting on 9.2 Release Notes
Measuring Free Memory and Kernel Cache Size on Linux
Caching Levels
Upcoming Events
Why Use Multiple Schemas?
Take a Dip in the Pooler
When to Use Multiple Clusters, Databases, or Schemas?
Avoiding Logical Dump Pitfalls
Multiple Databases and Global Objects
Selecting All Columns and TOAST
Don't Ignore
shared_preload_libraries
Three Ways to Install Postgres
The New Postgres Era
Software Patents: Why the Status Quo Continues?
Report from PGDay Austin
The Importance of High-Quality Documentation
Postgres Documentation
Why You Should Care About Libpq
Open Source Leadership
Pg_Upgrade and Optimizer Statistics
Pg_Upgrade Improvements Coming in Postgres 9.2
Postgres Getting Increased Attention
Report from Montreal's ConFoo Conference
CTE Presentation at ConFoo; Slides Now Online
Limiting Postgres Connections
Staying Close to Home
Part 1 of
Virtualizing Postgres
Now Online
The USA Is Planning a Triple Play
Sorting Performance Improvement for Postgres 9.2
Virtualizing Postgres
Let's See
work_mem
Postgres Memory Surprises
Revisiting Memory Reporting
NoSQL Databases as the New Scripting Language
Scalability What?
Increasing Database Reliability
The Most Important Postgres CPU Instruction
More Lessons From My Server Migration
New Server
Toast
Queries
Toast
-y Goodness
Coming to Boston
Presentations Updated
Spacewalk to Postgres
Less Travel
Processing Email
Reading Email During Trips
Postgres Email Activity
OpenSQL Camp Report
Attending OpenSQL Camp
Back From PG West
Perl For Development Scripts
Conference Schedule Resumed
Back to Work
Event Attendance Cancellations
Elephants Can Count Too
Report from Brasilia
The Kitchen Sink Has Arrived?
TODO TO-Gone
What Do You Do?
Oscon
Grand Prize
Linuxworld Wrapup, Swag
Appointed to PgUS Board
Oscon
Wrapup
Russian Chat Session
The MySQL Soap Opera
Oscon
Report
Attending
Oscon
pgpool PG Pool Party
Upcoming Presentations
Database House Of Cards
Postgres Development Visualized
Postgres Is Hot
Traveling Every Month
Master/Slave Replication
Coverity Security Scan
PGCon Impressions
The Photo Reply
Big Joke
Commit Fest Done
PGCon Developer's Meeting
Porting from Oracle to Postgres
May Commit-Fest Going Well
First 8.4 Commit-Fest Done
First Commit-Fest
Postgres 8.4 Development Started
Back From London
Attending
Fosdem
in Brussels
Reading Through the Manual
Benchmark Comparison
8.3RC2 Needed
Start