Pgextensions Index For PostgreSQL
Written by Nikos Vaggalis   
Monday, 22 July 2024

pgextensions.org by DataCloudGaze is an online index of all PostgreSQL extensions that are available on all Cloud providers' managed instances. Why is that useful?

datacloudgaze

It is well known that the Postgres extension ecosystem is vast; you really can find anything, imagination is the limit.
I won't expand further but if you look around IProgrammer you'll find many articles detailing such extensions, the
latest being about Pg_lakehouse.

Pg_lakehouse is an extension which "Makes PostgreSQL Quack", that is, it makes Postgres assume the role of DuckDB analytical engine so that you can query data residing on a multitude of object Stores and Table formats.

Given that plethora of extensions, the problem is how do you keep track of them. One way is through pgxman, the PostgreSQL Extension Manager, which

is like npm, but instead of Javascript packages, it is for PostgreSQL extensions. It detects and streamlines extension operations and looks after dependency management, installation and un-installation, based on the local development environment.

The issue, however, is that pxgman works only on local installations of Postgres. If you are on a cloud-managed instance, it could too, but in that case the provider has to add explicit support for it.

pgextensions takes it a step further by cataloging every extension available for installation out of the box, grouped by cloud provider and the managed postgresql services they offer.

As the official announcement states :

One crucial aspect we always consider when migrating databases to PostgreSQL on the cloud is the support for various extensions across categories like security, performance, maintenance, and beyond.

pgextensions provides that comprehensive and comparative information across major cloud providers, which comes handy when:

  • Migrating from one cloud provider to another for instance RDS to Cloud SQL and so on.
  • Migrating within the same cloud provider but from one managed service to another (e. g. , RDS to Amazon Aurora or Cloud SQL to AlloyDB).
  • Comparing cloud providers based on categories and use cases, such as identifying which provider offers the most extensions from connectors categories or those related to machine learning.
  • Ensuring compatibility and avoiding vendor lock-in, by understanding which extensions are universally supported.
  • Enhancing security and necessary compliance, by choosing extensions that offer advanced security features.

Let's put it to work.

Let's say that I'm starting afresh and want to pick up a managed PostgreSQL service that supports the hypopg- "Hypothetical Indexes for PostgreSQL" extension (We've looked at hypopg's usefulness in Let PostgreSQL Pick An Index For You. Check that for more.)

A very simple lookup gathers that both Amazon Aurora and RDS support this extension out of the box.


pgextensions1

Next let's assume that I own a Cosmos DB instance. What extensions can I install on its Azure premises?
Choosing Cosmos DB from the drop down reveals a nice bar chart that shows the number of extension available grouped by category, such as on Analytics, Auditing, MachineLearning, Searching etc.

pgextensions2

Furthermore if I scroll further down, I get all the details on each of those extensions.

Finally, I want to find out which CDC extensions are available across all the providers and managed services. I gather that pg_ivm is available just on Crunchy and Neon, while wal2json on AWS and Azure. (We have also covered pg_ivm in "Materialised Views On Steroids".)

So there you have it. If evaluating services across cloud providers or wanting to migrate from one to another,
pgextensions is a life saver.

extensions

More Information

pgextensions

Related Articles

pgxman - PostgreSQL Extension Manager

Pg_lakehouse Makes PostgreSQL Quack

pg_ivm - Materialised Views On Steroids

Let PostgreSQL Pick An Index For You

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


TypeScript Improves Never-Initialized Variables Checks
21/10/2024

Microsoft has announced TypeScript 5.7 in beta, with improvements including stronger checks for variables that have never been initialized before use, and path rewriting for relative paths.



CouchDB 3.4 Strengthens Password Hashes
03/10/2024

CouchDB 3.41 has been released with stronger password hashes, a Lucene-based full text search implementation, and QuickJS as a JavaScript option.


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info