Automate Postgres with your review apps! Chris offers up some sample code for GitHub actions and getting a test Postgres database created, getting the connection string to your review app, and closing it down.
Highlights and notes from this year's PostGIS day talks including the ideal GIS stack, PostGIS for emergency services, MobilityDB, and PostGIS functions for Star Wars.
Version 5.5 of Crunchy Postgres for Kubernetes is out and Andrew has an overview of highlights. We have a really cool new pgAdmin set up, streamlined metrics features, updated pgBouncer and more.
Thinking about solving the Advent of Code in Postgres? I did it last year and I have summary of how to get started and some tips and tricks for writing your own solutions.
Greg has more solutions to the last Advent of Code, this is day 23. Here he takes an ASCII map of dots and hashes and looks for free spaces with cardinal directions. Some fun SQL in here with table rebuilds and ANSI color charts all inside plain PostgreSQL.
Greg has more solutions to the last Advent of Code. He takes the text input file and solves the puzzle by charting a route through a maze. With some cool settings, these animations run inside psql.
More Advent of Code solutions in PostgreSQL, this is day 21. Greg separates out the monkey speak and creates looped functions to predict what they're saying. For bonus points, Greg shows off the new friendly big number inputs in Postgres 16 that use a format like BIGINT = 1_000_000_000.
Craig digs into the architecture behind a slick IoT data platform including Postgres, the Citus extension, and pg_partman partitioning. Add these together with columnar compression and you've got a fully open source and scalable IoT data stack.
Craig digs into multitenancy applications, sharding, and the Citus extension. He gives several approaches to the data design so that you're ready to scale if and when that time comes.
Greg continues to amaze us with solutions to the 2022 Advent of Code, this is day 20. Using only PostgreSQL he decrypts data, gets it sequenced, and gets back on his journey to meet up with the Elves.
Thinking about using pgvector to power some AI data in your Rails app? Chris walks through the very handy Neighbor gem and how it helps for vector data types and ActiveRecord.
David has some tricks and sample code for using CTEs to manipulate data and move things around inside your database. This can be especially handy for sorting, moving, or labeling data and moving it to an archive.
Bob has all the instructions for getting your Postgres in a Kubernetes multi-AZ environment.
The newest version of PgBouncer lets you run prepared statements while using a connection pooler. Greg breaks down the performance gains of prepared statements, why they have traditionally been a challenge, and this new feature.
We are excited about some of the Active Record updates with Rails 7.1! Chris reviews some of the notable new features for working with Postgres including async queries, composite primary keys, native support for CTEs, unlogged tables, and syntax normalization.
Elizabeth has a primer for working with money in Postgres including what data type to choose, storing currency, and some sample functions.
We love it when we get to work with the open source community! We recently helped with patches to OCI and Postgres 16 to make huge pages work with Postgres in containers and Kubernetes.
Everyone's favorite Postgres partition project, pg_partman, just released version 5 this week. Keith takes a step back and reviews five notable features that make pg_partman an essential tool for managing large tables in Postgres.
John gives us the basics of i/o in Postgres from how it works, to what parts of the database use IOPS, how to measure it, and what to do to optimize it. John also explains new view for pg_stat_io just released with Postgres 16 and how this can be used for performance analysis.
Paul shows examples of generating random numbers, random integers, random text values, and random groups. He also shows off the new random_normal function which just came out with Postgres 16.