Postgres isn't slow, your storage is
Source Entity
Hacker News

At POSETTE 2026, expert Sai Srirampur addressed common PostgreSQL performance bottlenecks, highlighting storage limitations as a primary culprit. The talk advocates for transitioning to local NVMe storage architectures to mitigate latency and resource contention issues at scale.
Rethinking Database Performance: Beyond the PostgreSQL Core
In the ever-evolving landscape of high-scale data management, a perennial debate persists regarding the performance ceilings of PostgreSQL. At the POSETTE 2026 conference, Sai Srirampur’s presentation, "Postgres Isn’t Slow. Your Storage Is," offered a critical reframing of this narrative. By shifting the focus from database engine optimization to the underlying infrastructure, Srirampur highlights how modern hardware constraints often masquerade as software inefficiencies.
Identifying the Silent Bottlenecks
For engineering teams operating at scale, the symptoms of storage-bound performance are often misdiagnosed. Srirampur outlines a series of red flags: ingestion slowdowns, volatile P95 read latencies, and critical background processes like autovacuum failing to keep pace with transaction volume. When checkpoints begin to compete with active application workloads for I/O bandwidth, the system enters a state of resource contention that no amount of query tuning can resolve. These issues, while varied in their manifestation, frequently point toward an inadequate storage subsystem rather than a flaw in the PostgreSQL architecture itself.
The Impact of I/O Contention
Logical replication lag and checkpoint pressure are particularly indicative of storage saturation. In traditional setups, shared storage or network-attached volumes often suffer from unpredictable latency spikes. When the database engine expects a consistent I/O path, but the storage layer introduces jitter or throughput limitations, the result is a cascading failure where background maintenance tasks fall behind. This creates a feedback loop: as autovacuum lags, table bloat increases, which in turn necessitates more I/O to perform standard scans, further straining the already saturated storage.
The Case for Local NVMe Architecture
To address these limitations, Srirampur proposes a strategic shift toward running PostgreSQL on local NVMe storage within production environments. NVMe (Non-Volatile Memory Express) offers significantly lower latency and higher parallelism compared to traditional storage protocols. By utilizing local NVMe, teams can bypass the overhead associated with network-attached storage, effectively removing the I/O bottleneck that prevents PostgreSQL from reaching its full potential in high-throughput scenarios.
Future Trends in Database Infrastructure
As data volumes grow, the industry is moving away from generic storage solutions toward specialized, high-performance hardware configurations. The transition to local NVMe represents a broader trend in database engineering: treating storage as a first-class citizen in the performance stack. Future architecture designs will likely prioritize deterministic I/O paths, allowing PostgreSQL to handle massive concurrent read/write operations without the volatility associated with shared network resources.
Conclusion
Sai Srirampur’s insights at POSETTE 2026 serve as a vital reminder that database performance is a holistic discipline. By recognizing that storage performance is often the hidden variable in scaling challenges, organizations can make more informed decisions about their hardware architecture. Moving toward local NVMe is not merely a hardware upgrade; it is a fundamental shift in how we approach the reliability and scalability of mission-critical PostgreSQL deployments.