Best of DatabaseFebruary 2026

  1. 1
    Article
    Avatar of hnHacker News·15w

    It’s 2026, Just Use Postgres

    Postgres extensions can replace specialized databases like Elasticsearch, Pinecone, Redis, MongoDB, and InfluxDB using the same core algorithms (BM25, HNSW, DiskANN). Managing one database instead of seven reduces operational complexity, eliminates data sync issues, simplifies AI agent testing, and cuts infrastructure overhead. Extensions like pg_textsearch, pgvector, pgvectorscale, TimescaleDB, and PostGIS provide full-text search, vector search, time-series, caching, document storage, and geospatial capabilities within Postgres. For 99% of companies, Postgres handles all database needs without the cognitive load, monitoring burden, and failure modes of database sprawl.

  2. 2
    Article
    Avatar of bytebytegoByteByteGo·13w

    How OpenAI Scaled to 800 Million Users With Postgres

    OpenAI scaled PostgreSQL to handle millions of queries per second for 800 million ChatGPT users using a single-primary architecture with read replicas. Their approach focused on three pillars: minimizing primary database load through read offloading and write optimization, query and connection optimization using PgBouncer for connection pooling, and preventing cascading failures with cache locking and rate limiting. They addressed PostgreSQL's MVCC constraints by migrating write-heavy workloads to sharded systems and enforcing strict schema change rules. The system achieves five-nines availability with low double-digit millisecond p99 latency through systematic optimization rather than sharding.

  3. 3
    Article
    Avatar of devjourneyDeveloper's Journey·13w

    From “It Works” to “I Understand Why It Works”

    A developer reflects on transitioning from making things work to understanding why they work, focusing on MongoDB cluster setup, Prisma integration, and intentional system design. They emphasize documentation, slowing down to think through architecture decisions, and planning a Discord bot project with a design-first approach. The piece explores the value of deeper technical understanding over surface-level implementation.

  4. 4
    Article
    Avatar of Marmelabmarmelab·12w

    9 Advanced PostgreSQL Features I Wish I Knew Sooner

    A practical tour of nine underused PostgreSQL features that can replace complex application-level logic with native database capabilities. Covered features include EXCLUDE constraints for preventing overlapping ranges, CHECK constraints for row-level validation, GENERATED columns for derived data, DISTINCT ON as a concise alternative to GROUP BY, the FILTER clause for conditional aggregates, PARTITION BY window functions, ON CONFLICT upserts, composite types for structured nested data, and recursive CTEs for traversing hierarchical data. Each feature is illustrated with concrete use cases and SQL examples, along with relevant limitations and links to official documentation.

  5. 5
    Article
    Avatar of hnHacker News·15w

    How we made geo joins 400× faster with H3 indexes

    Geospatial joins using predicates like ST_Intersects become prohibitively slow at scale due to quadratic complexity and expensive spatial operations. By automatically rewriting these queries to use H3 hierarchical hexagonal cell indexes, spatial predicates are transformed into fast integer equi-joins on cell IDs. The approach generates H3 coverage for geometries, performs a hash join on matching cells, then applies exact predicates only to filtered candidates. Benchmarks show 400× speedup at optimal resolution (resolution 3), reducing 37.6 million comparisons to ~200k. The technique works on-the-fly without materialized indexes, supporting views and subqueries while avoiding storage overhead.

  6. 6
    Article
    Avatar of last9Last9·12w

    Database Partitioning: Types, Strategies, and When to Use Each

    Database partitioning splits large tables into smaller physical segments within the same database instance, with the engine automatically routing queries to the correct partition. The three main strategies are range partitioning (ideal for time-series data), list partitioning (for categorical values like region), and hash partitioning (for even distribution). Partition key selection is critical — if queries don't filter on the key, all partitions get scanned, negating any benefit. PostgreSQL supports declarative partitioning since v10 with tools like pg_partman for automation; MySQL has native support with some constraints. Partitioning helps with query performance via partition pruning, faster data deletion (detach vs DELETE), and more manageable VACUUM operations. It does not solve write throughput scaling — that requires sharding. Monitoring should track per-partition row counts, pruning effectiveness via EXPLAIN, and maintenance timing.

  7. 7
    Article
    Avatar of supabaseSupabase·15w

    BKND joins Supabase

    Dennis Senn, creator of BKND, is joining Supabase to develop a Lite offering tailored for agentic workloads. The focus is on building lightweight backend infrastructure with features like trimmed-down sandboxes, specialized database architectures for AI agents, and simpler, more affordable databases. BKND will remain open source while the team explores the best approach to creating a lightweight Supabase experience in a separate repository.

  8. 8
    Article
    Avatar of architectureweeklyArchitecture Weekly·13w

    How I cheated on transactions

    Building a multi-database driver library (Dumbo) for Node.js revealed tradeoffs when supporting Cloudflare D1, which exposes databases via HTTP API and doesn't support traditional transactions. The solution uses D1's session-based repeatable reads and SQL batches to mimic transaction behavior, requiring explicit opt-in and accepting limitations like inability to rollback across multiple statements. This approach prioritizes API safety by making users acknowledge non-standard behavior while enabling practical use cases in event sourcing and document operations.

  9. 9
    Article
    Avatar of neontechNeon·15w

    How Zite Provisions Isolated Postgres Databases for Every User

    Zite built an app builder platform where every user gets their own isolated Postgres database. Initially using a shared RDS database, they faced noisy neighbor problems and scaling challenges. By switching to Neon's serverless Postgres, they provision thousands of dedicated databases daily using an API-first approach. Neon's instant provisioning, scale-to-zero capability, and usage-based pricing made per-customer database isolation economically viable without operational overhead.

  10. 10
    Article
    Avatar of hnHacker News·15w

    Postgres Postmaster does not scale

    The postmaster process in PostgreSQL runs a single-threaded main loop that handles connection spawning, worker reaping, and parallel query workers. Under extreme load with high connection rates (1400+ connections/sec) and background worker churn, this single-threaded bottleneck can saturate a CPU core, causing 10-15 second delays in connection establishment. The issue was traced through profiling to expensive fork operations and compounded by parallel query workers. Solutions include enabling huge pages for 20% throughput improvement, adding connection jitter to reduce peak rates, and eliminating parallel query bursts. This architectural constraint explains why connection pooling tools are essential for scaled PostgreSQL deployments.

  11. 11
    Article
    Avatar of systemdesigncodexSystem Design Codex·12w

    How to Prevent the DB from Becoming a Bottleneck

    Databases often become performance bottlenecks even when application code is well-optimized. This guide covers diagnosing DB slowdowns using query profiling (EXPLAIN ANALYZE, slow query logs) and key metrics, then addresses fixes at two levels: query optimization (proper indexing, avoiding SELECT *, using JOINs over nested queries) and architectural improvements (schema normalization vs. denormalization, caching with Redis/Memcached, connection pooling with pgbouncer, materialized views, sharding/partitioning, and read replicas). The core advice is to profile first, then apply targeted optimizations rather than guessing.

  12. 12
    Article
    Avatar of netflixNetflix TechBlog·14w

    Automating RDS Postgres to Aurora Postgres Migration

    Netflix's Online Data Stores team automated the migration of nearly 400 RDS PostgreSQL clusters to Aurora PostgreSQL using a self-service workflow. The solution leverages Aurora read replicas for continuous replication, achieving ~10 minute downtime windows by coordinating traffic quiescence through their Data Access Layer proxy. Key technical challenges included enforcing zero data loss without database credentials, handling replication slot lag validation (the 0→64MB oscillation pattern), and managing CDC consumers through backfill. The workflow automates parameter group migration, security group manipulation for traffic control, and uses OldestReplicationSlotLag metrics to verify synchronization before promotion.

  13. 13
    Article
    Avatar of baeldungBaeldung·15w

    Set Datasource When Creating Hibernate SessionFactory in Java

    Hibernate's SessionFactory can be explicitly configured with a Spring-managed Datasource by disabling JPA auto-configuration and manually wiring the connection pool. This approach provides fine-grained control over Hibernate bootstrapping, useful for multi-database setups or custom ORM behavior. The tutorial demonstrates using StandardServiceRegistryBuilder to inject the Datasource, configuring Hibernate properties programmatically, and validating the setup with JUnit tests in a Spring Boot application.

  14. 14
    Article
    Avatar of rubyflowRuby Flow·14w

    Rails Meets PostgreSQL 18

    PostgreSQL 18 introduces protocol 3.2 with extended cancel keys, removes UNLOGGED partitioned tables, and adds virtual generated columns. Rails 8.1 adapts through defensive adapter patches, requires pg gem ≥1.6 for compatibility, and adds support for virtual generated columns with `stored: false`. The pg_stat_statements extension receives improvements for better query profiling. Rails maintains forward compatibility through runtime capability detection rather than version ceilings, demonstrating mature ecosystem collaboration between PostgreSQL core, the pg gem, and Rails adapters.

  15. 15
    Video
    Avatar of devopstoolboxDevOps Toolbox·15w

    I was using Postgres wrong this whole time

    TimescaleDB transforms PostgreSQL into a high-performance time-series database through an open-source extension. The tutorial demonstrates core features including hyper tables (automatic data chunking by time), compression with delta encoding, time buckets for aggregating data at various intervals, and continuous aggregates that incrementally refresh materialized views. These capabilities enable PostgreSQL to handle millions of data points per second with 90% better compression than specialized NoSQL tools, while maintaining familiar SQL syntax and compatibility with existing PostgreSQL extensions.