Pigsty v2.7 發布,提供 255 個擴充功能的免費 RDS PG
發表於 2024-05-22,作者:Pigsty
相關開源
Pigsty 社群很高興宣布 Pigsty v2.7.0,它具有 255 個獨特的擴充功能,可作為免費的 PostgreSQL 發行版和 RDS 的替代方案。我們還為 Odoo、Jupyter、PolarDB 引入了一些新的 docker-compose 範本,並且 GA Supabase。
關於 Pigsty
Pigsty 是一個開箱即用、本地優先的 PostgreSQL 發行版,作為免費的 RDS 替代方案。
連結:網站 | GitHub | Demo | Blog | 安裝 | 功能
圖片:介紹 | 擴充功能 | 架構 | 儀表板
使用最新的 v2.7.0 版本開始使用:curl -L https://get.pigsty.cc/install | bash
Pigsty v2.7:擴充功能大爆發
我上個月寫了一篇熱門文章 - Postgres 正在吞噬資料庫世界,解釋了擴充功能對 PostgreSQL 生態系統的重要性。
基於這個想法,我們在 v2.7 中打包了 20 個全新的擴充功能。新增這些擴充功能後,Pigsty 為 EL Distros 提供 157 個非 contrib 擴充功能,為 Debian/Ubuntu Distros 提供 116 個。結合 73 個內建的 Contrib 擴充功能,Pigsty 現在總共有 255 個獨特的擴充功能,這將 PostgreSQL 的多功能性提升到了一個全新的水平!
可用擴充功能的完整清單:https://pigsty.io/docs/reference/extension/
v2.7.0 發布說明
重點
新增了許多用 rust
& pgrx
撰寫的新擴充功能
- pg_search v0.7.0:使用 BM25 演算法在 SQL 表上進行全文搜尋
- pg_lakehouse v0.7.0:查詢 S3 等物件儲存和 Delta Lake 等表格格式的引擎
- pg_analytics v0.6.1:加速 Postgres 內部的分析查詢處理
- pg_graphql v1.5.4:為您的 PostgreSQL 資料庫提供 GraphQL 支援。
- pg_jsonschema v0.3.1:PostgreSQL 擴充功能,提供 JSON Schema 驗證
- wrappers v0.3.1:Supabase 的 Postgres Foreign Data Wrappers 集合
- pgmq v1.5.2:一個輕量級訊息佇列。類似於 AWS SQS 和 RSMQ,但基於 Postgres。
- pg_tier v0.0.3:用 Rust 撰寫的 Postgres 擴充功能,用於將資料分層到 AWS S3
- pg_vectorize v0.15.0:在 Postgres 上編排向量搜尋的最簡單方法
- pg_later v0.1.0:立即執行 SQL,稍後取得結果。
- pg_idkit v0.2.3:產生許多流行的識別碼類型
- plprql v0.1.0:在 PostgreSQL 中使用 PRQL
- pgsmcrypto v0.1.0:PostgreSQL SM 演算法擴充功能
- pg_tiktoken v0.0.1:適用於 PostgreSQL 的 OpenAI tiktoken tokenizer
- pgdd v0.5.2:使用純 SQL 存取資料字典元資料
還有一些用純 C & C++ 編寫的新擴充功能
- parquet_s3_fdw 1.1.0:適用於 PostgreSQL 的 ParquetS3 Foreign Data Wrapper
- plv8 3.2.2:適用於 PostgreSQL 的 V8 引擎 Javascript 預存程序語言附加元件
- md5hash 1.0.1:用於儲存 MD5 雜湊而不是文字的自訂資料類型
- pg_tde 1.0 alpha:適用於 PostgreSQL 的實驗性加密存取方法
- pg_dirtyread 2.6:從 PostgreSQL 關係中讀取已死但未進行 vacuum 的元組
- 新的 deb PGDG 擴充功能:
pg_roaringbitmap
、pgfaceting
、mobilitydb
、pgsql-http
、pg_hint_plan
、pg_statviz
、pg_rrule
- 新的 rpm PGDG 擴充功能:
pg_profile
、pg_show_plans
,使用 PGDG 的 pgsql_http
、pgsql_gzip
、pg_net
、pg_bigm
而不是 Pigsty RPM。
新功能
- 為 el & deb 發行版準備用於基礎架構 & pgsql 套件的 arm64 套件。
- 從 Cloudflare 下載的新安裝腳本,以及更多提示。
- 新的監控儀表板 PGSQL PITR,以協助 PITR 程序。
- 為在 docker VM 容器內執行 pigsty 做好準備
- 為在未由 Pigsty 管理的節點上執行 pgsql.yml 添加了一個 防呆設計
- 為每個 OS 發行版添加了單獨的範本:el7、el8、el9、debian11、debian12、ubuntu20、ubuntu22
新的 Docker 應用程式
軟體升級
- PostgreSQL 16.3、15.7、14.12、13.15、12.19
- Patroni 3.3.0
- pgBackRest 2.51
- vip-manager v2.5.0
- Haproxy 2.9.7
- Grafana 10.4.2
- Prometheus 2.51
- Loki & Promtail:3.0.0(重大變更!)
- Alertmanager 0.27.0
- BlackBox Exporter 0.25.0
- Node Exporter 1.8.0
- pgBackrest Exporter 0.17.0
- duckdb 0.10.2
- etcd 3.5.13
- minio-20240510014138 / mcli-20240509170424
- pev2 v1.8.0 → v1.11.0
- pgvector 0.6.1 → 0.7.0
- pg_tle:v1.3.4 → v1.4.0
- hydra:v1.1.1 → v1.1.2
- duckdb_fdw:使用 libduckdb 0.10.2 重新編譯 v1.1.0
- pg_bm25 0.5.6 → pg_search 0.7.0
- pg_analytics:0.5.6 → 0.6.1
- pg_graphql:1.5.0 → 1.5.4
- pg_net 0.8.0 → 0.9.1
- pg_sparse(由於 pgvector 0.7 已棄用)
已修正的問題
- 修正角色 pg_exporters 在變數範本中的空白
- 修正在全域變數中未註解的
minio_cluster
- 修正在
el7
config 範本中不存在的 postgis34
套件名稱
- 根據上游修正 EL8
python3.11-cryptography
相依性為 python3-cryptography
- 修復
/pg/bin/pg-role
無法在非互動模式下從環境中獲取 OS 使用者名稱
- 修正
/pg/bin/pg-pitr
無法正確提示 -X
-P
標誌
API 變更
- 新的參數
node_write_etc_hosts
以控制是否在目標節點上寫入 /etc/hosts
檔案。
- 具有新參數
prometheus_sd_dir
的可重新定位的 prometheus 目標目錄。
- 新增
-x|--proxy
參數,以啟用並使用全域 Proxy 環境變數的值,由 @waitingsong 在 https://github.com/Vonng/pigsty/pull/405 中提供。
- 不再解析基礎架構 Nginx 日誌的詳細資訊,因為它會為日誌帶來過多的標籤。
- 在 Prometheus 設定中使用 Alertmanager API 版本
v2
,而不是 v1
。
- 在
pgsql
角色中使用 /pg/cert/ca.crt
,而不是 /etc/pki/ca.crt
。
致謝
非常感謝所有貢獻程式碼、回報錯誤和提出新功能的使用者。
Pigsty 的成長仰賴社群的貢獻。 我們熱烈歡迎您的想法、功能請求或程式碼。 請在我們的 GitHub 頁面上分享您的貢獻。 我們期待您對 Pigsty 2.7 的回饋,以及您持續的支持,使 Pigsty 變得更好。
敬祝順心,
Ruohang Feng (@vonng), rh@vonng.com , The Pigsty Community