Best of PostgreSQLDecember 2025

  1. 1
    Article
    Avatar of supabaseSupabase·24w

    Introducing Supabase for Platforms

    Supabase launches a white-label platform offering that enables companies to provision and manage fully managed backends for their users. The service includes database, auth, edge functions, storage, and realtime capabilities, with features like zero-scaling compute instances, embedded dashboard components via Platform Kit, and project transfer capabilities. AI builders like Lovable and Bolt.new are already using it to create millions of projects. Platforms can manage infrastructure centrally or let users bring their own Supabase accounts through OAuth integration.

  2. 2
    Article
    Avatar of advancedwebAdvanced Web Machinery·20w

    Why I prefer multi-tenant systems

    Multi-tenant architecture offers significant advantages even for single-customer systems. Key benefits include parallelizable integration testing through tenant isolation, production monitoring that mimics real user behavior without affecting actual clients, safe demo environments for sales and developers, and flexibility for future business evolution. The complexity overhead can be minimized using database-level features like PostgreSQL's row-level security, which centralizes tenant filtering rather than requiring it in every query.

  3. 3
    Article
    Avatar of hnHacker News·22w

    Avoid UUID Version 4 Primary Keys

    UUID Version 4 primary keys cause significant performance problems in PostgreSQL due to their random nature. Random values trigger excessive index page splits during inserts, create fragmented indexes with poor density (~79% vs ~98% for integers), and require accessing 31,000% more buffer pages for queries. The randomness prevents efficient B-Tree index operations and degrades cache hit ratios. Time-ordered alternatives like UUID Version 7 perform better by including timestamps in the first 48 bits. For most applications, integer or bigint primary keys backed by sequences remain the optimal choice, offering better performance, smaller storage footprint (4-8 bytes vs 16 bytes), and natural ordering. When obfuscation is needed, pseudo-random codes can be generated from integers using XOR operations and base62 encoding.

  4. 4
    Article
    Avatar of lobstersLobsters·22w

    Go ahead, self-host Postgres

    Self-hosting Postgres is more practical than cloud providers suggest. The author shares two years of experience running self-hosted Postgres serving millions of daily queries with minimal operational overhead (30 minutes monthly). Managed services like AWS RDS run standard Postgres with operational tooling, but at significant markup. Self-hosting offers better performance tunability, lower costs (dedicated servers cost less than equivalent RDS instances), and comparable reliability. The article provides specific configuration guidance for memory, connections, storage, and WAL settings, plus realistic time estimates for maintenance tasks. Self-hosting makes sense for most teams between complete beginners and enterprise-scale operations requiring dedicated database engineers.

  5. 5
    Article
    Avatar of neontechNeon·20w

    Stop Mocking Auth (It’s Breaking Your Tests)

    Mocking authentication in tests creates false confidence by skipping critical failure points like password verification, database constraints, and session management. Real auth testing is traditionally difficult due to shared state and slow database provisioning. Database branching offers a solution by creating isolated, copy-on-write database instances with separate auth endpoints for each test run, enabling fast, isolated testing against real authentication flows without test collisions or production data pollution.

  6. 6
    Video
    Avatar of asaprogrammerAs a Programmer·20w

    PERN Stack Course: Build a Full Stack Product Store with React and Postgres

    A comprehensive tutorial for building a full-stack product store application using the PERN stack (PostgreSQL, Express, React, Node.js). The course covers backend API development with TypeScript, Drizzle ORM for database management, authentication with Clerk, and frontend development with React, Tailwind CSS, and TanStack Query. Includes complete setup instructions, database schema design with relations, environment configuration, and deployment guidance. Features user authentication, product CRUD operations, commenting system, and 30+ theme options with responsive design.

  7. 7
    Article
    Avatar of crunchydataCrunchy Data·23w

    Postgres 18 New Default for Data Checksums and...

    Postgres 18 now enables data checksums by default during database initialization, providing automatic protection against silent data corruption. Data checksums work by calculating and storing a digital fingerprint for each 8KB data page, then verifying it on read to detect corruption. While this improves data integrity out-of-the-box, it creates a compatibility challenge for pg_upgrade users: both old and new clusters must have matching checksum settings. Existing databases without checksums can either use the new --no-data-checksums flag during upgrade initialization, or preferably enable checksums beforehand using the pg_checksums utility (though this requires downtime).

  8. 8
    Article
    Avatar of c8e54637d3ee4126a9c503737169de61Keshav Ashiya·22w

    Docify: Building a Production RAG System for Knowledge Management

    Docify is an open-source RAG system that processes documents locally while maintaining AI capabilities. The architecture uses 11 specialized services including async embedding generation with Celery, hybrid search combining pgvector and BM25, multi-factor ranking with citation verification, and token-aware context assembly. Built with PostgreSQL pgvector for vector storage, Redis for task queuing, and Ollama for local LLM inference, it supports heterogeneous document formats and implements deduplication via SHA-256 hashing. The system uses HNSW indexing for sub-200ms vector search, reciprocal rank fusion for search result merging, and citation verification to reduce hallucinations.

  9. 9
    Article
    Avatar of cybertec_postgresqlCYBERTEC PostgreSQL·22w

    Comparing stats! PostgreSQL 18 against 17

    PostgreSQL 18 introduces several new statistics columns for performance monitoring. The pg_stat_all_tables table adds four time-tracking columns for operations. VACUUM/ANALYZE now reports WAL, CPU, and read statistics. The pg_stat_io table gains three new byte-level I/O columns (read_bytes, write_bytes, extend_bytes) while removing the generic op_bytes column. Additionally, pg_stat_statements now tracks parallel worker activity with two new columns for launched and planned parallel workers.

  10. 10
    Article
    Avatar of elixirstatusElixirStatus·20w

    Modern and Flexible Accounting

    A solo founder shares their three-month journey building WorkBill, a double-entry accounting platform for small businesses. The tech stack centers on Elixir/Phoenix backend with InertiaJS bridging to a React frontend using shadcn/ui components. The platform features a flexible general ledger based on BeanCount's nested account model, allowing complex transaction representation without rigid categories. Key technical choices include Postgres for data storage, Oban for background jobs, BAML for LLM-powered reconciliation, and Reducto for PDF parsing. The nested account structure enables users to track finances flexibly even without explicit feature support, with invoicing and PDF generation via Typst planned next.

  11. 11
    Article
    Avatar of supabaseSupabase·22w

    Sync Stripe data to your Supabase database in one click

    Supabase now offers one-click integration with Stripe Sync Engine, allowing developers to sync Stripe payment data directly into their Postgres database. The integration uses webhooks for real-time updates and scheduled backfills for historical data, enabling SQL queries on customers, subscriptions, invoices, and payments. Unlike the existing Foreign Data Wrapper that makes API calls on demand, the Sync Engine copies data locally for faster queries, complex joins, and analytics without rate limits. The open-source solution uses Supabase Queues for reliable batch processing and includes features like JSONB storage, incremental sync, and multi-account support.

  12. 12
    Article
    Avatar of tinybirdTinybird·22w

    Build a Real-Time E-Commerce Analytics API from Kafka in 15 Minutes

    A step-by-step guide to building a real-time e-commerce analytics API using Kafka as the data source. Covers connecting to Kafka, ingesting order events, enriching data with dimension tables and PostgreSQL, creating materialized views for pre-aggregated metrics, and exposing multiple API endpoints. The tutorial progresses from a basic 5-minute setup querying raw Kafka data to advanced features including data enrichment, automated PostgreSQL syncing, and optimized aggregations using materialized views. All implementation uses SQL and configuration without requiring application code.

  13. 13
    Article
    Avatar of clickhouseClickHouse·23w

    Introducing pg_clickhouse: A Postgres extension for querying ClickHouse

    ClickHouse released pg_clickhouse v0.1.0, an Apache 2-licensed PostgreSQL extension that enables transparent execution of analytics queries on ClickHouse directly from PostgreSQL. Built on the foundation of clickhouse_fdw, the extension addresses the challenge of migrating analytical queries when moving workloads from PostgreSQL to ClickHouse. Key features include advanced query pushdown capabilities, support for ordered-set aggregates like percentile_cont(), SEMI JOIN pushdown, and transparent conversion of PostgreSQL aggregate FILTER expressions to ClickHouse combinators. Testing with TPC-H benchmarks shows 21 of 22 queries execute efficiently with 12 achieving full pushdown. The roadmap includes completing pushdown coverage for all analytic workloads, supporting all ClickHouse data types, and adding DML features.

  14. 14
    Article
    Avatar of neontechNeon·24w

    Improving DNS performance with NodeLocalDNS

    Neon deployed NodeLocalDNS across their Kubernetes clusters to optimize DNS performance for hundreds of thousands of ephemeral Postgres databases. By caching DNS requests locally on each node instead of routing them to central CoreDNS pods, they achieved an 84% reduction in 99th percentile latency and 87% improvement in 99.9th percentile latency. The deployment reduced network DNS traffic by 97% (from 2k to 60 requests/s), made traffic scale with nodes rather than pods, and unexpectedly helped identify DNS misconfigurations. The implementation required careful sequencing to avoid race conditions between kube-proxy and the DaemonSet, particularly on nodes with slow iptables rule installation.

  15. 15
    Article
    Avatar of itsfossIt's Foss·22w

    Watch Out Elasticsearch! Tiger Data's PostgreSQL BM25 Search Extension Goes Open Source

    Tiger Data has open-sourced pg_textsearch, a PostgreSQL extension that enables BM25 relevance-ranked keyword searches directly within PostgreSQL. Previously available only on Tiger Cloud, the extension is now released under The PostgreSQL License on GitHub. It supports 29+ languages, works with partitioned tables, and uses a memtable architecture for efficient indexing. The extension allows developers to run modern search capabilities without setting up external systems like Elasticsearch, and can be combined with pgvector for hybrid keyword and semantic search within a single database.

  16. 16
    Article
    Avatar of zalandoZalando·22w

    Contributing to Debezium: Fixing Logical Replication at Scale

    Zalando contributed two features to Debezium to solve WAL growth issues in PostgreSQL logical replication at scale. The first contribution introduced an opt-in `lsn.flush.mode` configuration to prevent WAL accumulation on low-activity databases. The second added `offset.mismatch.strategy` to handle conflicts between stored offsets and replication slot positions, enabling safer operation with durable offset stores. These features allow users to trust the replication slot position when appropriate, preventing unnecessary full re-syncs and enabling recovery from corrupted WAL segments.

  17. 17
    Article
    Avatar of postgresPostgreSQL·23w

    pg_ai_query v0.1.0 — First stable release with multi-model AI for PostgreSQL

    pg_ai_query v0.1.0 is now stable, bringing AI-powered query development directly into PostgreSQL. The extension generates SQL from natural language, provides AI-interpreted EXPLAIN ANALYZE results, and offers automated index and rewrite recommendations. It supports multiple AI providers including OpenAI, Anthropic, Google Gemini, OpenAI-compatible APIs like OpenRouter, and local models through Ollama. The extension works with PostgreSQL 14+ on Linux and macOS, enabling developers to choose between cloud models or fully local inference while staying within the Postgres environment.

  18. 18
    Video
    Avatar of youtubeYouTube·23w

    Gemini 3.0 Designer Is INSANE! Build Beautiful Websites and Apps In Minutes FOR FREE!

    Gemini 3.0 can build full-stack applications without writing code by combining Google Stitch for UI design, Anti-gravity IDE for autonomous coding, Tiger Data's Agentic Postgres for backend management, O.js for authentication, Stripe for payments, and Vercel for deployment. The tutorial demonstrates creating an AI course website from scratch using these free tools, including database setup with forkable infrastructure, MCP server integration, and complete frontend-to-backend implementation with authentication and payment processing.

  19. 19
    Article
    Avatar of debeziumDebezium·21w

    Debezium 3.4.0.Final Released

    Debezium 3.4.0.Final has been released with over 125 new features, improvements, and fixes. Key updates include Kafka 4.1.1 support, PostgreSQL 18 compatibility, new geometry transformations, Quarkus DevService extensions for native CDC applications, and improved Oracle LogMiner metrics. Breaking changes affect IBMi string trimming, Oracle XML dependencies, PostgreSQL 13 support ending, and SQL Server streaming query modes. The release adds incremental snapshots for IBMi, AWS IAM authentication for PostgreSQL, multiple DevService support in Quarkus, and geometry data type handling in the JDBC sink.

  20. 20
    Article
    Avatar of changelogChangelog·22w

    Agents in the database with Ajay Kulkarni, CEO of Tiger Data (Changelog Interviews #671)

    Ajay Kulkarni, CEO of Tiger Data (formerly Timescale), discusses his journey from enterprise work to founding a database company. The conversation covers how founder values shape company culture, the evolution from Timescale to Tiger Data, and the emerging concept of agents in databases. Topics include the speed of modern development, database interaction patterns, and the API/CLI/MCP/Skills ecosystem for AI agents.

  21. 21
    Video
    Avatar of freecodecampfreeCodeCamp·22w

    Intro to Supabase – Full Tutorial for Beginners

    Supabase is an open-source backend-as-a-service platform built on PostgreSQL that handles database operations, authentication, and real-time data synchronization. This tutorial walks through building a React sales dashboard with Supabase, covering database setup, querying data with the client library, implementing real-time subscriptions for live updates, inserting data through forms, and adding user authentication with sign-up/sign-in flows. The course demonstrates connecting a React frontend to Supabase using environment variables, fetching and displaying aggregated sales data in charts, and securing data with row-level security policies.

  22. 22
    Article
    Avatar of postgresPostgreSQL·20w

    pgSCV 0.15.1 released!

    pgSCV 0.15.1 is now available, a Prometheus-compatible monitoring agent and metrics exporter for PostgreSQL environments. This release includes new functionality and bug fixes between versions 0.15.0 and 0.15.1, though specific features aren't detailed in the announcement. The tool aims to provide a unified solution for collecting metrics from PostgreSQL and related services.

  23. 23
    Article
    Avatar of ergq3auoeReinier·24w

    Complete NodeJS REST API Course | ExpressJS, JWT Authentication, PostgreSQL, Prisma...

    A comprehensive video course covering backend development fundamentals including building REST APIs with Node.js and Express, implementing JWT authentication, database management with PostgreSQL and Prisma ORM, and input validation techniques.

  24. 24
    Article
    Avatar of crunchydataCrunchy Data·24w

    Postgres Scan Types in EXPLAIN Plans

    Explains the different scan types that appear in Postgres EXPLAIN plans and when each is used. Covers sequential scans (reading entire tables row-by-row), index scans (using B-tree indexes to locate data), bitmap index scans (hybrid approach creating in-memory bitmaps), parallel scans (using multiple workers concurrently), and index-only scans (retrieving all data from the index without touching the main table). Includes practical examples showing when each scan type is optimal and how to identify them in query plans.