Introducing Crunchy Data Warehouse: A next-generation Postgres-native data warehouse. Crunchy Data Warehouse Learn more

Latest posts from Jonathan S. Katz

  • 8 min read

    Easy PostgreSQL 12 and pgAdmin 4 Setup with Docker

    Jonathan S. Katz

    When I first started working with PostgreSQL and containers , one of the first items presented to me was a recipe to get PostgreSQL 10 setup with pgAdmin 4 using Docker, which was over two years ago. Quite a bit has changed in the ecosystem since then, including PostgreSQL itself! As such, it felt like it was time to update the recipe and work through some new examples. Much like before, there's a " tl;dr " if you do not wish to read through my ramblings, but a more in depth explanation there...

    Read More
  • 5 min read

    Deploy pgAdmin4 with PostgreSQL on Kubernetes

    Jonathan S. Katz

    Tools like the PostgreSQL Operator make it easy to get PostgreSQL up and running on Kubernetes , but what about actually accessing your Postgres databases? pgAdmin 4 is a popular choice for managing PostgreSQL workloads as it's both accessible from a web browser and provides an intuitive interface for daily PostgreSQL tasks such as running queries, adding new tables, and much more. I've previously shown how to easily deploy pgAdmin 4 with PostgreSQL on Docker , but what about on Kubernete...

    Read More
  • 5 min read

    Scheduled PostgreSQL Backups and Retention Policies with Kubernetes

    Jonathan S. Katz

    It is important (understatement) that you take regularly scheduled backups of your PostgreSQL system as well as manage how many backups you have, which is known as "backup retention." These best practices ensure that you always have a recent backup of your database system to recover from in the event of a disaster (or use to clone a new copy of your database ) and that you don't run out of storage on your backup device or blow up your object storage bill (true story from a previous life, I ha...

    Read More
  • 6 min read

    Monitoring PostgreSQL Clusters in Kubernetes

    Jonathan S. Katz

    UPDATE : Read the updated " How to Setup PostgreSQL Monitoring in Kubernetes " which is even easier to set up and provides additional monitoring features! The open source PostgreSQL Operator provides many features that are required to run a production database-as-a-service on Kubernetes , including provisioning PostgreSQL clusters, performing backup and restore operations , and manage high-availability runtime environments. This time, we are going to look at a very important part of managing...

    Read More
  • 8 min read

    Creating a PostgreSQL Cluster with Kubernetes CRDs

    Jonathan S. Katz

    The PostgreSQL Operator provides users with a few different methods to perform PostgreSQL cluster operations, via: • a REST API • , PostgreSQL Operator Command Line Interface ( CLI ) • Directly interfacing with Kubernetes, including various APIs and custom resource definitions ( CRDs ). a REST API , PostgreSQL Operator Command Line Interface ( CLI ) Directly interfacing with Kubernetes, including various APIs and custom resource definitions ( CRDs ). While the REST API and pgo provide...

    Read More
  • Just Upgrade: How PostgreSQL 12 Can Improve Your Performance

    Jonathan S. Katz

    PostgreSQL 12, the latest version of the "world's most advanced open source relational database," is being released in the next few weeks, barring any setbacks. This follows the project's cadence of providing a raft of new database features once a year, which is quite frankly, amazing and one of the reasons why I wanted to be involved in the PostgreSQL community. In my opinion, and this is a departure from previous years, PostgreSQL 12 does not contain one or two single features that everyone c...

    Read More
  • 11 min read

    Certificate Authentication Recipe for PostgreSQL Docker Containers

    Jonathan S. Katz

    One of the reasons that PostgreSQL supports many authentication methods is to help ensure that it can work with multiple external identity management providers. While a lot of people are familiar with having PostgreSQL request a password for logging in, there are other ways to facilitate the management of user authentication depending on your deployment requirements. One method that can be used in larger enterprise environments is using certificates to authenticate between a PostgreSQL clien...

    Read More
  • 7 min read

    How to Upgrade Your PostgreSQL Passwords to SCRAM

    Jonathan S. Katz

    In a lot of PostgreSQL environments, it’s common practice to protect user accounts with a password. Starting with PostgreSQL 10, the way PostgreSQL manages password-based authentication got a major upgrade with the introduction of SCRAM authentication , a well-defined standard that is a significant improvement over the current system in PostgreSQL. What’s better is that almost all PostgreSQL drivers now support this new method of password authentication, which should help drive further adop...

    Read More
  • 5 min read

    Explaining CVE-2019-10164 + PostgreSQL Security Best Practices

    Jonathan S. Katz

    The PostgreSQL Global Development Group provided an out-of-cycle update release for all supported to provide a fix for the CVE-2019-10164 vulnerability. This vulnerability only affects people running PostgreSQL 10, 11 or the 12 beta, and it is effectively remediated by simply upgrading all of your PostgreSQL installations to the latest versions. What follows is some more insight about what this vulnerability is, the impact it can have in your environment, how to ensure you have patched all of...

    Read More
  • PostgreSQL BRIN Indexes: Big Data Performance With Minimal Storage

    Jonathan S. Katz

    Many applications today record data from sensors, devices, tracking information, and other things that share a common attribute: a timestamp that is always increasing. This timestamp is very valuable, as it serves as the basis for types of lookups, analytical queries, and more. PostgreSQL 9.5 introduced a feature called block range indexes (aka BRIN ) that is incredibly helpful in efficiently searching over large time series data and has the benefit of taking up significantly less space on di...

    Read More