Modules

This section lists the available feature modules within Pigsty, and future planning modules

Basic Modules

Pigsty offers four PRIMARY modules, which are essential for providing PostgreSQL service:

  • PGSQL : Autonomous PostgreSQL cluster with HA, PITR, IaC, SOP, monitoring, and 335 extensions!.
  • INFRA : Local software repository, Prometheus, Grafana, Loki, AlertManager, PushGateway, Blackbox Exporter, etc.
  • NODE : Adjusts the node to the desired state, name, time zone, NTP, ssh, sudo, haproxy, docker, promtail, keepalived.
  • ETCD : Distributed key-value store, serving as the DCS (Distributed Consensus System) for the highly available Postgres cluster: consensus leadership election, configuration management, service discovery.

Kernel Modules

Pigsty allow using four different PostgreSQL KERNEL modules, as an optional in-place replacement:

  • MSSQL: Microsoft SQL Server Wire Protocol Compatible kernel powered by AWS, WiltonDB & Babelfish.
  • IVORY: Oracle Compatible kernel powered by the IvorySQL project supported by HiGo
  • POLAR: Oracle RAC / CloudNative kernel powered by Alibaba PolarDB for PostgreSQL
  • CITUS: Distributive PostgreSQL (also known as Azure Hyperscale) as an extension, with native Patroni HA support.

We also have an ORACLE module powered by PolarDB-O, a commercial kernel from Aliyun, Pro version only.


Extended Modules

Pigsty offers four OPTIONAL modules,which are not necessary for the core functionality but can enhance the capabilities of PostgreSQL:

  • MINIO: S3-compatible simple object storage server, serving as an optional PostgreSQL database backup repository with production deployment support and monitoring.
  • REDIS: High-performance data structure server supporting standalone m/s, sentinel, and cluster mode deployments, with comprehensive HA & monitoring support.
  • FERRET: Native FerertDB deployment — adding MongoDB wire protocol level API compatibility to existing HA PostgreSQL cluster.
  • DOCKER: Docker Daemon allowing users to easily deploy containerized stateless software tool templates, adding various functionalities.

DBMS Modules

Pigsty allow using other PERIPHERAL modules around the PostgreSQL ecosystem:

  • DUCKDB: Pigsty has duckdb cli, fdw, and PostgreSQL integration extensions such as pg_duckdb, pg_lakehouse, and duckdb_fdw.
  • SUPABASE: Run firebase alternative on top of existing HA PostgreSQL Cluster!
  • GREENPLUM: MPP for of PostgreSQL (PG 12 kernel), WIP
  • CLOUDBERRY: Greenplum OSS fork with PG 14 kernel, WIP
  • NEON: Serverless & branching PostgreSQL, WIP

Pilot Modules

Pigsty is actively developing some new PILOT modules, which are not yet fully mature yet:

  • MYSQL: Pigsty is researching adding high-availability deployment support for MySQL as an optional extension feature (Beta).
  • KAFKA: Pigsty plans to offer message queue support (Beta).
  • KUBE: Pigsty plans to use SealOS to provide out-of-the-box production-grade Kubernetes deployment and monitoring support (Alpha).
  • VICTORIA: Prometheus & Loki replacement with VictoriaMetrics & VictoriaLogs with better performance(Alpha
  • JUPYTER: Battery-included Jupyter Notebook environment for data analysis and machine learning scenarios(Alpha

Monitoring Other Databases

Pigsty’s INFRA module can be used independently as a plug-and-play monitoring infrastructure for other nodes or existing PostgreSQL databases:

  • Existing PostgreSQL services: Pigsty can monitor external, non-Pigsty managed PostgreSQL services, still providing relatively complete monitoring support.
  • RDS PG: Cloud vendor-provided PostgreSQL RDS services, treated as standard external Postgres instances for monitoring.
  • PolarDB: Alibaba Cloud’s cloud-native database, treated as an external PostgreSQL 11 / 14 instance for monitoring.
  • KingBase: A trusted domestic database provided by People’s University of China, treated as an external PostgreSQL 12 instance for monitoring.
  • Greenplum / YMatrixDB monitoring, currently treated as horizontally partitioned PostgreSQL clusters for monitoring.




Last modified 2024-09-01: update about section to v3.0.0 (78c40aba)