Learn how to get the best performance and scale your PostgreSQL database with our weekly shows. Receive the best content curated from around the web. We have a special focus on content for developers since your architecture and usage is the key to getting the most performance out of PostgreSQL.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/279-tps-benchmark-partition-wise-join-partitioning-billions-postgres-16-features/ In this episode of Scaling Postgres, we discuss how pgbouncer can impact a TPS benchmark, partition-wise join & aggregate performance, partitioning a table with billions of rows and cool Postgres 16 features.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/278-squeeze-your-system-one-million-connections-indexing-like-pgvector-hnsw/ In this episode of Scaling Postgres, we discuss how to squeeze the most out of your database, achieving one million connections to Postgres, how to use indexes with LIKE and pgvector HNSW index performance.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/277-postgres-releases-postgresql-survey-partitioning-sharding-bulk-loading/ In this episode of Scaling Postgres, we discuss new Postgres releases, taking the 2023 State of PostgreSQL survey, partitioning vs. sharding and the fastest way to do bulk loads.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/276-brin-correlation-poor-partitioning-10-beginner-tips-table-index-usage/ In this episode of Scaling Postgres, we discuss the importance of correlation with BRIN indexes, how partitioning can kill performance, 10 tips for beginners and how to track table and index usage.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/275-no-more-vacuum-zero-downtime-cut-over-network-impact-not-in-optimization/ In this episode of Scaling Postgres, we discuss getting rid of vacuum, how to do zero-downtime cut-overs, analyzing the impact of slow networks and seeing a not in optimization.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/274-subquery-performance-avoid-update-locking-column-changes-outage-workshop/ In this episode of Scaling Postgres, we discuss subquery performance, how to avoid excessive locking when doing updates, how to change a columns datatype without excessive locking and lessons from an upgrade outage.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/273-debian-ubuntu-packages-ivfflat-indexes-in-vs-any-view-logging/ In this episode of Scaling Postgres, we discuss how Debian & Ubuntu package Postgres, how ifflat indexes work, in vs any performance and how to log view usage.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/272-postgres-16-beta-2-rise-of-vectors-fdw-performance-unused-indexes/ In this episode of Scaling Postgres, we discuss the release of Postgres 16 Beta 2, the rise of vectors and storing them, Foreign Data Wrapper performance and how to identify unused indexes.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/271-30-percent-faster-uuid-downsides-growing-wal-processes-vs-threads/ In this episode of Scaling Postgres, we discuss how to get 30% faster performance, the downsides of UUIDs, having too much WAL and whether Postgres should use processes or threads.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/270-data-skew-monitoring-remote-access-csv-documentation/ In this episode of Scaling Postgres, we discuss how to handle data skew, tools for Postgres monitoring, how to load data remotely and Postgres documentation.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/269-upgrade-struggles-hyperloglog-pgbouncer-usage-postgres-scaling/ In this episode of Scaling Postgres, we discuss Postgres upgrade struggles, how and why to use hyperloglog, using pgbouncer for session vs. transaction pooling, and methods to scale Postgres.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/268-faster-copy-psql-variables-backup_label-bad-encoding/ In this episode of Scaling Postgres, we discuss faster COPY in Postgres 16, how to use psql variables, the importance of backup_label and issues with bad character encoding.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/267-postgres-16-beta-1-rust-functions-partitioning-memory-problems-tags-arrays/ In this episode of Scaling Postgres, we discuss the release of PostgreSQL 16 Beta 1, creating Rust functions with PL/Rust, memory problems related to partitioning and prepared statements, and modeling tags with arrays.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/266-postgres-releases-postgres-distributed-privilege-template-real-time-dashboard/ In this episode of Scaling Postgres, we discuss new Postgres releases, EDB Postgres Distributed, a privilege template and real-time dashboards.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/265-pg_stat_statements-transaction-id-wraparound-consultant-knowledge-cituscon/ In this episode of Scaling Postgres, we discuss different ways to use pg_stat_statements, how to handle transaction ID wraparound, consultant knowledge and all the videos of CitusCon.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/264-worst-part-pluggable-storage-busy-system-data-architecture/ In this episode of Scaling Postgres, we discuss the worst part of Postgres, the status of pluggable storage, what makes a busy system and methods for managing different data architectures.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/263-lz4-zstd-compression-avoiding-problems-triggers-simplify-indexes-can-hurt/ In this episode of Scaling Postgres, we discuss LZ4 and ZSTD pg_dump compression, how to avoid problems, can triggers simplify and indexes can hurt.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/262-pg_failover_slots-standby-logical-decoding-trusted-language-extensions-postgres-package-manager/ In this episode of Scaling Postgres, we discuss the pg_failover_slots extension, how PG16 allows logical decoding on standbys, what are trusted language extensions and how a package manager has been built for them.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/261-easy-foreign-data-wrappers-jsonb-cheatsheet-updating-cost-limit-parallel-aggregate/ In this episode of Scaling Postgres, we discuss how to easily crate a foreign data wrapper to consume an API, present a convenient JSONB cheatsheet, changes to updating the vacuum cost limit and new parallel aggregates.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/260-plrust-row-locks-postgres-errors-sql-2023/ In this episode of Scaling Postgres, we discuss PL/Rust 1.0 release, row locks, Postgres errors and the new SQL 2023 standard.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/258-logical-replication-database-antipatterns-max_wal_size-delete-vs-truncate/ In this episode of Scaling Postgres, we discuss max_wal_size as it relates to recovery time, losing your data with collation changes, getting production ready and highlights coming in Postgres 16.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/258-logical-replication-database-antipatterns-max_wal_size-delete-vs-truncate/ In this episode of Scaling Postgres, we discuss use cases for logical replication, database anti-patterns, how to set max_wal_size and the difference between delete and truncate.
To get the show notes as well as get notified of new episodes, visit: https://www.scalingpostgres.com/episodes/257-adopting-pgcat-time-bins-work_mem-settings-bad-constraints/ In this episode of Scaling Postgres, we discuss Instacart adopting PgCat, binning or bucketing your data by time, the best settings for work_mem and how to avoid bad check constraints.
In this episode of Scaling Postgres, we discuss WAL growing to 11 Terabytes, pgec supporting writes, Patroni 3.0 & Citus for high availability, and setting up PostgREST. Visit https://www.scalingpostgres.com/episodes/255-integer-overflow-user-friendly-permissions-dump-logical-replication-worker-config/ to get the show notes as well as subscribe to get notified of new episodes.
In this episode of Scaling Postgres, we discuss how to detect & handle integer overflows, a wish for user-friendly permissions, using a dump to start logical replication and configuring background workers. Visit https://www.scalingpostgres.com/episodes/255-integer-overflow-user-friendly-permissions-dump-logical-replication-worker-config/ to get the show notes as well as subscribe to get notified of new episodes.
In this episode of Scaling Postgres, we discuss PG Edge Cache, using Postgres & OpenAI, migrating citext to case-insenstive collations and PG16 compression options. Visit https://www.scalingpostgres.com to get the show notes as well as subscribe to get notified of new episodes.
In this episode of Scaling Postgres, we discuss working with unlogged tables, the new pg_stat_io feature, handling complex type constraints and choosing the best text type. Visit https://www.scalingpostgres.com to get the show notes as well as subscribe to get notified of new episodes.
In this episode of Scaling Postgres, we discuss new Postgres releases, performance secrets, things not to do and filter vs. case. Visit https://www.scalingpostgres.com to get the show notes as well as subscribe to get notified of new episodes.
In this episode of Scaling Postgres, we discuss how to use the filter clause, create hypothetical indexes, store non-relational data and manage TOAST. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.crunchydata.com/blog/using-postgres-filter https://www.crunchydata.com/blog/will-postgres-use-my-index-hypothetical-indexing-with-postgres https://blog.rustprooflabs.com/2023/02/postgres-relational-plus https://hdombrovskaya.wordpress.com/2023/02/03/pgsql-phriday-005-relational-and-non-relational-data/ https://www.pgmustard.com/blog/storing-blobs-in-postgres https://andreas.scherbaum.la/blog/archives/1132-Relational-and-Non-relational-Data-PGSQL-Phriday-005.html https://www.percona.com/blog/unlocking-the-secrets-of-toast-how-to-optimize-large-column-storage-in-postgresql-for-top-performance-and-scalability/ http://peter.eisentraut.org/blog/2023/01/30/postgresql-supply-chain https://www.red-gate.com/simple-talk/databases/postgresql/postgresql-constraints-learning-postgresql-with-grant/ https://www.crunchydata.com/blog/intro-to-postgres-custom-data-types https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-15 https://pganalyze.com/blog/5mins-postgres-tracing-locks-eBPF-pg-lock-tracer https://www.percona.com/blog/argument-for-logical-failover-slots/ https://www.percona.com/blog/postgresql-database-security-external-server-based-authentication/ https://www.postgresql.fastware.com/blog/postgresql-15-and-beyond https://www.cybertec-postgresql.com/en/transaction-id-wraparound-a-walk-on-the-wild-side/ https://www.crunchydata.com/blog/stateful-postgres-storage-using-kubernetes https://www.migops.com/blog/null-and-empty-string-in-oracle-vs-postgresql-vs-sql-server/ http://blog.cleverelephant.ca/2023/02/proj-network.html https://postgres.fm/episodes/default-configuration https://postgresql.life/post/luca_ferrari/ https://www.rubberduckdevshow.com/episodes/72-dragonruby-game-development-with-amir-rajan/
In this episode of Scaling Postgres, we discuss resolving a performance issue, how PG16 allows you to survive without a superuser, reserving connections and handling partition management. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://medium.com/engineering-at-birdie/puzzling-postgres-a-story-of-solving-an-unreproducible-performance-issue-778075ed7998 http://rhaas.blogspot.com/2023/01/surviving-without-superuser-coming-to.html https://www.red-gate.com/simple-talk/databases/postgresql/postgresql-basics-roles-and-privileges/ https://www.dbi-services.com/blog/postgresql-16-reserved_connections/ https://pganalyze.com/blog/5mins-postgres-16-superuser-reserved-connections https://www.timescale.com/blog/how-timescaledb-solves-common-postgresql-problems-in-database-operations-with-data-retention-management/ https://www.percona.com/blog/wal-compression-in-postgresql-and-recent-improvements-in-version-15/ https://www.cybertec-postgresql.com/en/unique-constraint-null-conflicts-with-everything/ https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-14 https://www.pgsqlphriday.com/2023/01/pgsql-phriday-005/ https://blog.rustprooflabs.com/2023/01/pgsqlphriday-005--postgres-relational-and-otherwise https://www.youtube.com/playlist?list=PLiT-kUSX8USXMSdIeV9QZTrem57h_Ksut#pgconfnyc2022 https://www.youtube.com/watch?v=rihfAnd_leM https://www.migops.com/blog/migration-of-synonyms-from-oracle-to-postgresql/ https://www.migops.com/blog/online-rebuild-of-indexes-oracle-vs-postgresql/ https://fluca1978.github.io/2023/01/23/PostgreSQLColors.html https://postgres.fm/episodes/infra-cost-optimization https://postgresql.life/post/jim_chanco_jr/ https://www.rubberduckdevshow.com/episodes/71-short-ruby-news-with-lucian-ghinda/
In this episode of Scaling Postgres, we discuss issues with locking tables, foreign keys and slow decimals. We also cover when joins use memoize. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links: https://thebuild.com/blog/2023/01/16/ok-sometimes-you-can-lock-tables/ https://thebuild.com/blog/2023/01/18/a-foreign-key-pathology-to-avoid/ https://thebuild.com/blog/2023/01/15/how-slow-is-decimal-anyway/ https://pganalyze.com/blog/5mins-postgres-memoize-speed-up-joins https://www.cybertec-postgresql.com/en/usql-universal-psql/ https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-13 https://gavinray97.github.io/blog/postgres-wire-protocol-jdk-21 https://www.citusdata.com/blog/2023/01/18/debugging-postgres-ci-failures-faster-4-tips/ https://postgres.fm/episodes/auditing https://postgresql.life/post/miroslav_sedivy/ https://www.rubberduckdevshow.com/episodes/70-teaching-young-developers-with-melissa-amaya/
In this episode of Scaling Postgres, we discuss different pagination solutions, how to return modifications, soft deletion alternatives and how to use JSON with PostgreSQL. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.cybertec-postgresql.com/en/pagination-problem-total-result-count/ https://sqlfordevs.com/returning-modified-rows https://brandur.org/fragments/deleted-record-insert https://dev.to/ftisiot/how-to-json-in-postgresqlr-1lj7 https://momjian.us/main/writings/pgsql/beyond.pdf http://peter.eisentraut.org/blog/2023/01/11/postgresql-largest-commits https://supabase.com/blog/postgres-foreign-data-wrappers-rust https://medium.com/@walttonm/using-the-window-function-row-number-to-remove-duplicates-in-postgresql-5aef1edfb78c https://pgdash.io/blog/horizontally-scaling-postgresql.html https://www.percona.com/blog/upgrading-postgresql-extensions/ https://www.timescale.com/blog/a-postgresql-developers-perspective-six-interesting-patches-from-novembers-commitfest/ https://pganalyze.com/blog/5mins-postgres-16-pgbench-random-normal https://www.depesz.com/2023/01/11/waiting-for-postgresql-16-invent-random_normal-to-provide-normally-distributed-random-numbers/ https://www.orioledata.com/blog/buffer-management/ https://github.com/orioledb/orioledb https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-11 https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-12 https://www.crunchydata.com/blog/timezone-transformation-using-location-data-and-postgis https://www.migops.com/blog/avoiding-constraint-violations-while-migrating-oracle-to-postgresql-date-data-type/ https://databaserookies.wordpress.com/2023/01/09/substr-functionality-differences-between-oracle-and-postgresql-what-you-need-to-know/ https://databaserookies.wordpress.com/2023/01/08/unleasing-boolean-data-type-casting-in-postgresql/ https://postgres.fm/episodes/copying-a-database https://postgresql.life/post/francesco_tisiot/ https://www.rubberduckdevshow.com/episodes/69-adventures-in-note-taking/
In this episode of Scaling Postgres, we discuss how to generate test data, how WAL archiving is faster in PG15, how to set date statistics on a timestamp and how to avoid useless indexes. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://kmoppel.github.io/2022-12-23-generating-lots-of-test-data-with-postgres-fast-and-faster/ https://www.percona.com/blog/speed-up-of-the-wal-archiving-in-postgresql-15/ https://www.cybertec-postgresql.com/en/improving-group-by-with-create-statistics/ https://mydbanotebook.org/post/too-many-indexes/ https://www.cybertec-postgresql.com/en/json-logs-in-postgresql-15/ http://peter.eisentraut.org/blog/2022/12/27/postgresql-hidden-gems https://www.softwareandbooz.com/advent-of-code-2022-days-6-10-with-postgresql/ https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-6 https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-7 https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-8 https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-9 https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-10 https://hdombrovskaya.wordpress.com/2022/12/29/pgsql-phriday-004-postgresql-and-software-development/ https://andreas.scherbaum.la/blog/archives/1127-PGSQL-Phriday-004-PostgreSQL-and-Software-Development.html https://www.softwareandbooz.com/database-devops-and-code-management-with-postgresql/ https://gorthx.wordpress.com/2023/01/06/pgsql-phriday-004-sequence-survey/ https://blog.rustprooflabs.com/2023/01/postgres-software-development https://www.cybertec-postgresql.com/en/union-all-data-types-performance/ https://pganalyze.com/blog/5mins-postgres-UNION-subquery-pull-up-performance https://www.percona.com/blog/transparent-data-encryption-tde/ https://github.com/michelp/pgsodium https://www.percona.com/blog/diffing-postgresql-schema-changes/ https://www.percona.com/blog/postgresql-vacuuming-to-optimize-database-performance-and-reclaim-space/ https://www.migops.com/blog/oracle-vs-sql-server-vs-postgresql-date-date-type/ https://postgrespro.com/blog/pgsql/5969929 https://postgres.fm/episodes/row-estimates https://postgres.fm/episodes/postgres-year-in-review-2022 https://postgres.fm/episodes/transaction-id-wraparound https://postgresql.life/post/lukas_eder/
In this episode of Scaling Postgres, we discuss columnar table storage, solving Advent of Code using Postgres, new features coming in Postgres 16 and when Postgres development happens. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.percona.com/blog/powering-postgresql-15-with-columnar-tables/ https://github.com/citusdata/citus/blob/main/src/backend/columnar/README.md https://www.softwareandbooz.com/advent-of-code-2022-with-postgresql-part1/ https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-1 https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-2 https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-3 https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-4 https://www.crunchydata.com/blog/solving-advent-of-code-2022-using-postgres-day-5 https://www.depesz.com/2022/12/14/waiting-for-postgresql-16-add-grantable-maintain-privilege-and-pg_maintain-role/ https://www.depesz.com/2022/12/14/waiting-for-postgresql-16-non-decimal-integer-literals/ https://www.depesz.com/2022/12/12/waiting-for-postgresql-16-add-test-scaffolding-for-soft-error-reporting-from-input-functions/ https://www.cybertec-postgresql.com/en/pg_dump-compression-specifications-postgresql-16/ http://peter.eisentraut.org/blog/2022/12/13/postgresql-commit-times https://pganalyze.com/blog/5mins-postgres-benchmarking-indexes https://www.amazingcto.com/postgres-for-everything/ https://supabase.com/blog/new-in-postgres-15 https://www.highgo.ca/2022/12/16/global-unique-index-attach-support-and-its-potential-deficiency/ https://www.cybertec-postgresql.com/en/oracle-to-postgresql-migration-cost-assessment/ https://postgresql.life/post/tushar_ahuja/
In this episode of Scaling Postgres, we discuss ENUMs vs. check constraints, querying table facets with roaring bitmaps, a better way to handle scaling and whether you should store your business logic in Postgres. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.crunchydata.com/blog/enums-vs-check-constraints-in-postgres https://www.cybertec-postgresql.com/en/faceting-large-result-sets/ https://github.com/cybertec-postgresql/pgfaceting https://pganalyze.com/blog/5mins-postgres-roaring-bitmaps-pgfaceting-query-performance https://thenewstack.io/iso-better-scaling-instacart-drops-postgres-for-amazon-dynamodb/ https://www.rubberduckdevshow.com/episodes/68-should-you-store-business-logic-in-your-database/ https://www.ongres.com/blog/debugging-postgres-wal-events-with-pg_walinspect/ https://kmoppel.github.io/2022-12-09-the-bountiful-world-of-postgres-indexing-options/ https://andreas.scherbaum.la/blog/archives/1125-PGSQL-Phriday-003-What-is-the-PostgreSQL-Community-to-me.html https://www.crunchydata.com/blog/state-of-json-in-postgres-2022 https://postgres.fm/episodes/timestamps https://postgresql.life/post/ales_zeleny/
In this episode of Scaling Postgres, we discuss merging indexes vs. a composite index, implementing transparent column encryption, developing trusted language extensions, and reviewing the WAL archive module. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://sirupsen.com/index-merges https://supabase.com/blog/transparent-column-encryption-with-postgres https://aws.amazon.com/blogs/aws/new-trusted-language-extensions-for-postgresql-on-amazon-aurora-and-amazon-rds/ https://pganalyze.com/blog/5mins-postgres-pg-tle-custom-extensions-aws-rds-aurora-trusted-languages-hooks https://github.com/aws/pg_tle https://www.percona.com/blog/new-wal-archive-module-library-in-postgresql-15/ https://sqlasylum.wordpress.com/2022/11/29/pgsql-phriday-003-what-is-the-community-to-you/ https://www.softwareandbooz.com/postgresql-community-passionate-knowledgeable-and-thoughtful/ https://www.scarydba.com/2022/12/02/pgsql-phriday-3-what-is-the-postgresql-community-to-you/ https://blog.rustprooflabs.com/2022/12/pgsql-phriday-003 https://postgrespro.com/blog/pgsql/5969884 https://www.cybertec-postgresql.com/en/which-partition-did-i-insert/ https://www.crunchydata.com/blog/postgres-strings-to-arrays-and-back-again https://ente.io/blog/tech/postgres-queue/ https://www.cybertec-postgresql.com/en/grant-vacuum-analyze-postgresql-16/ https://www.crunchydata.com/blog/postgis-day-2022 https://postgres.fm/episodes/postgrest https://postgresql.life/post/oleksandr_shulgin/ https://www.rubberduckdevshow.com/episodes/67-what-happens-after-rubycritic-with-ernesto-tagwerker/
In this episode of Scaling Postgres, we discuss how PG15 helps reduce replication lag, how to get the parameters used in prepared statements, PostGIS Day and how to use multiple pgbouncers. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://pganalyze.com/blog/5mins-postgres-performance-in-lists-vs-any-operator-bind-parameters https://sqlfordevs.com/ghost-conditions-for-unindexed-columns https://www.crunchydata.com/blog/percentage-calculations-using-postgres-window-functions https://www.postgresonline.com/journal/index.php?/archives/406-VARIADIC-Unnest.html https://supabase.com/blog/sql-or-nosql-both-with-postgresql https://www.cybertec-postgresql.com/en/error-permission-denied-schema-public/ https://www.highgo.ca/2022/11/25/global-index-benchmark-with-pgbench/ https://fluca1978.github.io/2022/11/24/PostgreSQLDataSyncRetry.html https://postgres.fm/episodes/materialized-views https://postgresql.life/post/tobias_bussmann/
In this episode of Scaling Postgres, we discuss how PG15 helps reduce replication lag, how to get the parameters used in prepared statements, PostGIS Day and how to use multiple pgbouncers. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://pganalyze.com/blog/5mins-postgres-15-maintenance-io-concurrency-reduce-replication-lag https://www.cybertec-postgresql.com/en/explain-that-parameterized-statement/ https://blog.rustprooflabs.com/2022/11/route-the-interesting-things-postgis-day2022 https://www.crunchydata.com/blog/postgres-at-scale-running-multiple-pgbouncers https://www.crunchydata.com/blog/postgres-query-boost-using-any-instead-of-in https://fluca1978.github.io/2022/11/16/psqlEmacsClient.html https://people.planetpostgresql.org/devrim/index.php?/archives/121-Improved-aarch64-arm64-support-is-available-in-the-PostgreSQL-RPM-repository..html https://postgrespro.com/blog/pgsql/5969859 https://www.crunchydata.com/blog/multi-cloud-strategies-with-crunchy-postgres-for-kubernetes https://pgsqlpgpool.blogspot.com/2022/11/dynamic-spare-process-management-in.html https://www.enterprisedb.com/blog/how-use-external-database-pgadmin-user-settings https://postgres.fm/episodes/hot-updates https://postgresql.life/post/onder_kalaci/ https://www.rubberduckdevshow.com/episodes/66-top-down-or-bottom-up-testing/
In this episode of Scaling Postgres, we discuss the release of Postgres 15.1, a Postgres 10 retrospective, how to reduce replication lag and using listen & notify. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.postgresql.org/about/news/postgresql-151-146-139-1213-1118-and-1023-released-2543/ https://jkatz05.com/post/postgres/postgres-10-tribute/ https://kmoppel.github.io/2022-11-09-postgres-v15-a-billion-transactions-later/ https://www.citusdata.com/blog/2022/11/10/reducing-replication-lag-with-io-concurrency-in-pg15/ https://www.enterprisedb.com/blog/listening-postgres-how-listen-and-notify-syntax-promote-high-availability-application-layer http://amitkapila16.blogspot.com/2022/11/logical-replication-improvements-in.html https://pganalyze.com/blog/5mins-postgres-15-logical-replication-replica-identity https://www.postgresql.fastware.com/blog/performance-impact-of-row-filters-and-column-lists-in-logical-replication https://www.timescale.com/blog/read-before-you-upgrade-best-practices-for-choosing-your-postgresql-version/ https://www.cybertec-postgresql.com/en/rewrite-or-to-union-in-postgresql-queries/ https://dev.to/ftisiot/using-postgresqlr-json-functions-to-navigate-reviews-of-restaurants-in-india-39ld https://www.percona.com/blog/securing-patroni-rest-api-end-points-part-2-using-ssl-certificates/ https://postgres.fm/episodes/database-branching https://postgresql.life/post/wilfried_roset/ https://www.rubberduckdevshow.com/episodes/65-callbacks-good-or-evil/
In this episode of Scaling Postgres, we discuss how sequential scans can be forced, the best way to rename a table without downtime, different Postgres terminology and the PGSQL Phriday blogging event. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://code.jeremyevans.net/2022-11-01-forcing-sequential-scans-on-postgresql.html https://pganalyze.com/blog/5mins-postgres-large-integers-causing-sequential-scan-instead-of-using-index https://brandur.org/fragments/postgres-table-rename https://www.crunchydata.com/blog/challenging-postgres-terminology https://andreas.scherbaum.la/blog/archives/1122-PGSQL-Phriday-002-PostgreSQL-Backup-and-Restore.html https://blog.rustprooflabs.com/2022/11/pgsql-phriday-002 https://mydbanotebook.org/post/how-to-do-proper-backups/ https://www.scarydba.com/2022/11/04/validating-backups-pgsql-phriday-002/ https://www.softwareandbooz.com/adventures-in-postgresql-backups/ http://rhaas.blogspot.com/2022/11/pgbasebackup-could-not-set-compression.html https://www.cybertec-postgresql.com/en/btree-vs-brin-2-options-for-indexing-in-postgresql-data-warehouses/ https://www.crunchydata.com/blog/postgres-indexing-when-does-brin-win https://www.enterprisedb.com/blog/new-public-schema-permissions-postgresql-15 https://www.percona.com/blog/postgresql-are-all-nulls-the-same/ https://www.percona.com/blog/securing-patroni-rest-api-end-points-part-1/ https://www.crunchydata.com/blog/data-loading-in-postgres-for-newbies https://postgres.fm/episodes/version-control-for-databases https://postgresql.life/post/adrien_nayrat/ https://www.rubberduckdevshow.com/episodes/64-where-to-put-your-business-logic-with-jason-charnes/
In this episode of Scaling Postgres, we discuss how to set shared buffers, the different WAL compression algorithm options, how to use the merge command and how to contribute to Postgres. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.enterprisedb.com/blog/harnessing-shared-buffers-part-2 https://pganalyze.com/blog/5mins-postgres-tuning-shared-buffers-pgbench-TPROC-C-TPROC-H https://www.enterprisedb.com/blog/you-can-now-pick-your-favorite-compression-algorithm-your-wals https://www.enterprisedb.com/blog/merge-command https://postgres.fm/episodes/contributing-to-postgres https://supabase.com/blog/postgresql-commitfest http://peter.eisentraut.org/blog/2022/10/25/postgresql-15-statistics https://www.highgo.ca/2022/10/28/cross-partition-uniqueness-guarantee-with-global-unique-index/ https://www.crunchydata.com/blog/postgres-databases-and-schemas https://www.crunchydata.com/blog/easier-upgrades-and-image-management-for-postgres-in-kubernetes https://postgresml.org/blog/postgresml-is-8x-faster-than-python-http-microservices/ https://www.crunchydata.com/blog/moving-objects-and-geofencing-with-postgres-postgis https://blog.rustprooflabs.com/2022/10/pgrouting-lines-through-polygons https://www.cybertec-postgresql.com/en/postgis-upgrade-geos-with-ubuntu-in-3-steps/ https://www.citusdata.com/blog/2022/10/21/postgres15-available-in-azure-cosmos-db-for-postgresql/ https://devblogs.microsoft.com/cosmosdb/distributed-postgresql-comes-to-azure-cosmos-db/ https://azure.microsoft.com/en-us/products/cosmos-db/#overview https://postgresql.life/post/etienne_bersac/ https://www.rubberduckdevshow.com/episodes/63-halloween-party-with-coding-horror-stories/
In this episode of Scaling Postgres, we discuss why and what to do when updates are slow, use cases for lateral joins, moving from serial to identity for auto-incrementing ids and changes to Postgres 15. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.cybertec-postgresql.com/en/why-are-my-postgresql-updates-getting-slower/ https://pganalyze.com/blog/5mins-postgres-debug-UPDATE-bloated-tables-auto-explain-pageinspect https://sqlfordevs.com/for-each-loop-lateral-join https://adamj.eu/tech/2022/10/21/migrate-postgresql-ids-serial-identity-django-4.1/ https://blog.rustprooflabs.com/2022/10/postgres-15-config-changes https://pgconfig.rustprooflabs.com/param/change/14/15 https://www.enterprisedb.com/blog/exclusive-backup-mode-finally-removed-postgres-15 https://fluca1978.github.io/2022/10/21/PostgreSQL15JsonLogs.html https://www.enterprisedb.com/blog/postgres-15-adds-copy-header-and-matching https://www.endpointdev.com/blog/2022/10/upgrading-postgresql-14-to-15-on-fedora-centos-rocky-alma-linux/ https://www.bostongis.com/blog/index.php?/archives/278-Using-pg_upgrade-to-upgrade-PostgreSQL-9.6-PostGIS-2.4-to-PostgreSQL-15-3.3-on-Yum.html https://www.softwareandbooz.com/postgresql-at-the-pass-data-community-summit-2022/ https://postgres.fm/episodes/stored-procedures https://postgresql.life/post/cedric_duprez/ https://www.rubberduckdevshow.com/episodes/62-staying-off-the-rails-with-joel-drapper/
In this episode of Scaling Postgres, we discuss the release of Postgres 15, the performance of different file systems with Postgres, options for connection pooling and how to secure your connections. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.postgresql.org/about/news/postgresql-15-released-2526/ https://www.crunchydata.com/blog/be-ready-public-schema-changes-in-postgres-15 https://www.crunchydata.com/blog/a-look-at-postgres-15-merge-command-with-examples https://www.enterprisedb.com/blog/postgres-vs-file-systems-performance-comparison https://www.cybertec-postgresql.com/en/pgbouncer-types-of-postgresql-connection-pooling/ https://tailscale.com/blog/introducing-pgproxy/ https://www.timescale.com/blog/vpc-peering-from-zero-to-hero/ https://www.softwareandbooz.com/pgsql-phriday-001-wrap-up-and-review/ https://knock.app/blog/postgres-index-findings https://pganalyze.com/blog/5mins-postgres-15-managing-indexes https://www.percona.com/blog/dont-forget-to-tune-stats-collector-for-postgresql-14-and-older/ http://peter.eisentraut.org/blog/2022/10/11/postgresql-system-catalog-schema-diagrams https://brandur.org/fragments/postgres-partitioning-2022 https://www.highgo.ca/2022/10/14/global-index-a-different-approach/ https://thenewstack.io/5-years-of-postgres-on-kubernetes/ https://www.percona.com/blog/run-postgresql-in-kubernetes-solutions-pros-and-cons/ https://supabase.com/blog/postgres-full-text-search-vs-the-rest https://www.enterprisedb.com/blog/how-set-streaming-replication-keep-your-postgresql-database-performant-and-date https://postgres.fm/episodes/postgresql-15 https://postgresql.life/post/christoph_berg/ https://www.rubberduckdevshow.com/episodes/61-live-streaming-tools-toys-with-aaron-francis/
In this episode of Scaling Postgres, we discuss the Postgres 15 RC2, optimizing shared buffers, how to secure your database connections and blog posts from PGSQL Phriday. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.postgresql.org/about/news/postgresql-15-rc-2-released-2521/ https://www.enterprisedb.com/blog/harnessing-shared-buffers-and-reaping-performance-benefits-part-1 https://innerjoin.bit.io/the-majority-of-postgresql-servers-on-the-internet-are-insecure-f1e5ea4b3da3 https://www.softwareandbooz.com/pgsql-phriday-001-invite/ https://andreas.scherbaum.la/blog/archives/1121-PGSQL-Phriday-001-Two-truths-and-a-lie.html https://mydbanotebook.org/post/2-it-depends-and-1-must/ https://andyatkinson.com/blog/2022/10/07/pgsqlphriday-2-truths-lie https://www.scarydba.com/2022/10/07/pgsql-phriday-001-two-truths-and-a-lie/ https://sqlasylum.wordpress.com/2022/10/07/pgsqlphriday-001-truth-and-lies/ https://hakibenita.com/future-proof-sql https://www.cybertec-postgresql.com/en/vacuum-does-not-shrink-my-postgresql-table/ https://j-carson.github.io/2022/10/02/brin/ https://pganalyze.com/blog/5mins-postgres-BRIN-index https://www.percona.com/blog/postgresql-15-new-features-to-be-excited-about/ https://supabase.com/blog/postgres-wasm http://blog.cleverelephant.ca/2022/10/postgresql-links.html https://postgrespro.com/blog/pgsql/5969770 https://www.citusdata.com/blog/2022/09/30/how-to-add-more-environments-to-postgres-ci/ https://proopensource.it/blog/learning-postgresql https://postgres.fm/episodes/102-query-optimization https://postgresql.life/post/joseph_sciarrino/ https://www.rubberduckdevshow.com/episodes/60-beginners-journey-with-codewithjulie/
In this episode of Scaling Postgres, we discuss the release of the Postgres 15 Release Candidate 1, new ICU collations features, how to use listen & notify and understanding TOAST. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.postgresql.org/about/news/postgresql-15-rc-1-released-2516/ http://peter.eisentraut.org/blog/2022/09/26/icu-features-in-postgresql-15 https://pganalyze.com/blog/5mins-postgres-15-logical-replication-filters-database-wide-icu-collations https://www.cybertec-postgresql.com/en/listen-notify-automatic-client-notification-in-postgresql/ https://www.crunchydata.com/blog/real-time-database-events-with-pg_eventserv https://www.dbi-services.com/blog/toasting-strategies-in-postgresql/ https://www.dbi-services.com/blog/toasting-in-postgresql-toast-tables/ https://www.dbi-services.com/blog/toasting-in-postgresql-lets-see-it-in-action/ https://blog.rustprooflabs.com/2022/10/announce-mastering-postgis-openstreemap https://dev.to/yugabyte/all-about-pgstatstatements-27jn https://mydbanotebook.org/post/preferred-types/ https://innerjoin.bit.io/introducing-pgsqlite-a-pure-python-module-to-import-sqlite-databases-into-postgres-bf3940cfa19f https://pgloader.io/ https://postgres.fm/episodes/why-is-postgres-popular https://postgresql.life/post/nicolas_thauvin/
In this episode of Scaling Postgres, we discuss using rust for Postgres extensions, performance comparisons of TimescaleDB vs. Postgres, uninterrupted writes when sharding in Citus and the Postgres data flow. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://postgresml.org/blog/postgresml-is-moving-to-rust-for-our-2.0-release/ https://www.timescale.com/blog/postgresql-timescaledb-1000x-faster-queries-90-data-compression-and-much-more/ https://www.citusdata.com/blog/2022/09/19/citus-11-1-shards-postgres-tables-without-interruption/ https://www.crunchydata.com/blog/postgres-data-flow https://www.cybertec-postgresql.com/en/postgresql-sequences-vs-invoice-numbers/ https://postgrespro.com/blog/pgsql/5969741 https://www.crunchydata.com/blog/fun-with-postgres-functions https://www.depesz.com/2022/09/18/what-is-lateral-what-is-it-for-and-how-can-one-use-it/ https://www.postgresql.fastware.com/blog/column-lists-in-logical-replication-publications https://blog.dalibo.com/2022/09/19/psycopg-pipeline-mode.html https://pganalyze.com/blog/5mins-postgres-python-psycopg-3-1-pipeline-mode-query-performance https://ideia.me/using-the-timescale-gem-with-ruby https://b-peng.blogspot.com/2022/09/configuring-vip-route-table.html https://postgres.fm/episodes/index-maintenance https://postgresql.life/post/peter_smith/ https://www.rubberduckdevshow.com/episodes/59-rails-postgres-scaling-with-andrew-atkinson/
In this episode of Scaling Postgres, we discuss little known useful features, a monthly community blogging initiative, PG 15 Anticipation, and getting generic plans. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://it.badykov.com/blog/2022/09/12/simple-and-usefull-postgresql-features/ https://www.softwareandbooz.com/introducing-psql-phriday/ https://www.youtube.com/watch?v=b-C3TjmzEmU https://dev.to/yugabyte/explain-from-pgstatstatements-normalized-queries-how-to-always-get-the-generic-plan-in--5cfi https://pganalyze.com/blog/5mins-postgres-explain-pg-stat-statements-plan-cache-mode-normalized-query https://www.cybertec-postgresql.com/en/what-is-an-inner-join-in-sql-and-what-is-an-outer-join/ https://proopensource.it/blog/json-versus-jsonb https://www.percona.com/blog/working-with-snapshots-in-postgresql/ https://www.crunchydata.com/blog/postgres-pgcrypto https://www.citusdata.com/blog/2022/09/12/distributed-postgres-goes-full-open-source-with-citus/ https://b-peng.blogspot.com/2022/09/configuring-vip-in-cloud.html https://postgres.fm/episodes/macro-query-analysis-intro https://postgresql.life/post/karen_jex/ https://www.rubberduckdevshow.com/episodes/58-engineering-vs-product-managers-with-brittany-martin-josh-gaastra/
In this episode of Scaling Postgres, we discuss the release of Postgres 15 Beta 4, different primary key options, sequence limits and how to examine your Postgres configuration. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.postgresql.org/about/news/postgresql-15-beta-4-released-2507/ https://supabase.com/blog/choosing-a-postgres-primary-key#the-post-uuidv1v4-era-a-cambrian-explosion-of-identifiers https://blog.devgenius.io/analyzing-new-unique-identifier-formats-uuidv6-uuidv7-and-uuidv8-d6cc5cd7391a https://www.2ndquadrant.com/en/blog/sequential-uuid-generators/ https://www.cybertec-postgresql.com/en/error-nextval-reached-maximum-value-of-sequence/ https://proopensource.it/blog/postgresql-configuration https://aws.amazon.com/blogs/database/parallel-vacuuming-in-amazon-rds-for-postgresql-and-amazon-aurora-postgresql/ https://pganalyze.com/blog/5mins-postgres-parallel-vacuum-sql-json-postgres-16 https://blog.jooq.org/how-to-plot-an-ascii-bar-chart-with-sql/ https://postgres.fm/episodes/wal-and-checkpoint-tuning https://www.codewithjason.com/podcast/11223850-160-postgresql-with-andrew-atkinson/ https://postgresql.life/post/jeevan_ladhe/
In this episode of Scaling Postgres, we discuss the PG15 changes to public schema permissions, experiences with kubernetes for Postgres management, using dump manifests for restores and a fork of PgBouncer. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://andreas.scherbaum.la/blog/archives/1120-Changes-to-the-public-schema-in-PostgreSQL-15-and-how-to-handle-upgrades.html https://proopensource.it/blog/postgresql-on-k8s-experiences https://pganalyze.com/blog/5mins-postgres-kubernetes-operator-handling-major-version-upgrades https://www.percona.com/blog/working-with-postgresql-dump-manifests/ https://blog.cloudflare.com/open-sourcing-our-fork-of-pgbouncer/ https://www.postgresql.fastware.com/blog/how-postgresql-15-improved-communication-in-logical-replication https://www.depesz.com/2022/09/02/sql-json-is-postponed/ https://www.cybertec-postgresql.com/en/postgresql-alter-table-add-column-done-right/ https://www.crunchydata.com/blog/postgres-migration-pitstop-collations https://www.timescale.com/blog/timescale-cloud-tips/ https://sqlfordevs.com/statistical-results-fill-gaps https://www.depesz.com/2022/08/31/new-sql-pretty-printer-based-on-parsing-and-not-regexps/ https://postgres.fm/episodes/intro-to-query-optimization https://postgresql.life/post/douglas_hunley/ https://www.rubberduckdevshow.com/episodes/57-going-off-the-rails-with-drew-bragg/
In this episode of Scaling Postgres, we discuss how the stats collector disappears in PG15, steps to mitigate high latency connections, how to run Postgres in the browser and the future of high availability. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.percona.com/blog/postgresql-15-stats-collector-gone-whats-new/ https://pganalyze.com/blog/5mins-postgres-improve-query-network-latency-performance-pipeline-mode-copy-tc https://www.crunchydata.com/blog/crazy-idea-to-postgres-in-the-web-browser https://www.enterprisedb.com/blog/pg-phriday-defining-high-availability-postgres-world https://www.enterprisedb.com/blog/ansible-benchmark-framework-postgresql https://www.timescale.com/blog/what-does-a-postgresql-commitfest-manager-do-and-should-you-become-one/ https://postgis.net/2022/08/25/tip-upgrading-postgis-sfcgal/ https://www.cybertec-postgresql.com/en/migrate-scheduled-jobs-to-pg_timetable-from-pgagent/ https://postgres.fm/episodes/how-to-become-a-dba https://postgresql.life/post/antonin_houska/ https://www.rubberduckdevshow.com/episodes/56-live-streaming-laravel-with-aaron-francis/
In this episode of Scaling Postgres, we discuss a new Postgres playground, a book about PG14 internals, how to corrupt your database and using anti-joins. Subscribe at https://www.scalingpostgres.com to get notified of new episodes. Links for this episode: https://www.crunchydata.com/blog/learn-postgres-at-the-playground https://www.crunchydata.com/developers/tutorials https://www.youtube.com/watch?v=Ryj5c8zLF50 https://postgrespro.com/blog/pgsql/5969682 https://www.cybertec-postgresql.com/en/how-to-corrupt-your-postgresql-database/ https://www.crunchydata.com/blog/rise-of-the-anti-join https://www.enterprisedb.com/blog/aws-rds-postgresql-deployment-pgadmin-4 https://www.enterprisedb.com/blog/leverage-new-way-import-existing-postgres-database-kubernetes https://postgrespro.com/blog/pgsql/5969676 https://www.cybertec-postgresql.com/en/aliases-for-sub-selects-in-from-clause/ https://postgres.fm/episodes/monitoring-checklist https://pganalyze.com/blog/5mins-postgres-security-patch-releases-pgspot-pghostile https://postgresql.life/post/hou_zhijie/ https://www.rubberduckdevshow.com/episodes/55-code-quality-with-ernesto-tagwerker/