暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Postgres Weekly:给 PostgreSQL 贡献太难了?!

ApacheCloudberry 2024-05-16
127

本期周报由 Cloudberry Database 社区选编自英文版《Postgres Weekly》553 期[1]与 554 期[2],内容较原文有差异。

博文推荐

Hacking on PostgreSQL is Really Hard[3] By ROBERT HAAS
给 PostgreSQL 贡献太难了?!😵‍💫 文章中有些有意思的观点和感悟。

本文作者 Robert 是 EnterpriseDB 首席数据库专家、PostgreSQL 主要贡献者和 Committer,即使编程经验超过 30 年、参与 PostgreSQL 开发维护超过 15 年,仍然在为 PostgreSQL 贡献时遭遇挑战,比如缺乏足够测试、疏忽一些关键考虑等等,始终不能在不冒后续持续清理修复风险的情况下提交变更。希望看到 PostgreSQL 社区开发者越来越多,在一个版本中交付越来越多,但目前进展很缓慢。如果放宽审核标准,允许不严谨的代码流入,后面可能会花费更多的时间来修补。作者提到,编写合理正确的补丁从来不是容易事,或者是不是也给我们自己设置了太多难题?

What's New in pgvector v0.7[4] By PAVEL BORISOV
近期 pgvector 发布 v0.7 版本,本文对该版本特性做了总结。

The 150x pgvector Speedup: A Year in Review[5] By JONATHAN KATZ
回顾 pgvector 过去一年的性能提升。

Understanding Postgres Schemas and search_path[6] By ZACH MUSGRAVE
本文介绍了版本化 Postgres - Doltgres 项目开发团队 Dolt 对 Postgres Schema 和 search_path
 的理解。

Papa's Got a Brand New RAG[7] By SHAUN M. THOMAS
RAG(检索增强生成)是与大型语言模型一起使用的技术,它可以通过获取数据并将其包含在提示中来改进大型语言模型(LLMs)给出的响应。本文演示了如何将所有部分整合在一起,使用 Python 构建一个基于 RAG 的简单查询系统,其中 pg_vectorize 在 Postgres 端执行繁重的任务。

Postgres' supported platforms over time[8]
Peter Eisentraut 在本文中回顾了 Postgres 对操作系统/平台的支持,由之前的 22 个平台支持到现在的 8 个,在 Postgres 17 将移除对 AIX 的支持。不过,后续可能会增加对相关系统衍生版本/变体的支持。

阅读推荐

📄 cursor_tuple_fraction
 and PostgreSQL JDBC[9]
 By LAURENZ ALBE
📄 Postgres Bloat Minimization[10] By PAVEL BORISOV
📄 13 Tips to Improve INSERT Performance[11] By MICHAEL FREEDMAN (TIMESCALE)
📄 Conversion Gotchas: Implicit Conversion in an Oracle to Postgres Migration[12] By DEEPAK MAHTO
📄 Using Automatic DDL Replication with pgEdge Distributed PostgreSQL[13] By CADY MOTYKA (PGEDGE)
📄 (Bi)Temporal Tables, PostgreSQL and the SQL Standard[14] By HENRIETTA DOMBROVSKAYA
📄 Nightly Postgres Backups via GitHub Actions[15] By JOSH STRANGE
📄 When and Why Postgres Indexes are Ignored[16] By CLUSTERITY S.R.O.
📄 Benchmarking Connection Poolers: PgBouncer, PgCat and Supavisor[17] By BINIDXABA (TEMBO)
📄 Test and Release pgrx Extensions with pgxn-tools[18] By DAVID WHEELER
📄 LDAP Authentication in PgBouncer Through PAM[19] By JOBIN AUGUSTINE

新闻简报

每周 PostgreSQL 人物 - Nazir Bilal Yavuz[20]

Nazir Bilal Yavuz 目前生活在土耳其,在微软从事 PostgreSQL 开发工作,当前主要负责实现 PostgreSQL 中的 streaming IO vectored IO 功能。

🇨🇭 Swiss PGDay 2024[21] 日程公布
活动将于苏黎世附近举办,时间为 6 月 27-28。

代码与工具

pg_back 2.3.0 发布[22]
一个简单的 Postgres 备份工具,由 Go 编写,可将数据库转储到文件中,包括角色、服务器参数等。

pgdsat[23] ─ 一款 Postgres 数据库安全评估工具
对 Postgres 集群进行 70 多项安全检查,包括 CIS 合规基准的所有建议,同时生成包括测试状态概览和详情的报告。

pgAdmin 4 v8.6[24] 发布
流行的 Postgres 管控平台。

PeerDB v0.13.0[25] 发布
由前微软和 Citus Data 成员创建,主要支持将数据从 Postgres 流式传输到数据仓库、队列或其它引擎中。

pg_tier: Tier Data to External Amazon S3 Storage[26]
Rust 语言编写的 Postgres 扩展,支持将数据分层存储到 AWS S3,对于查询频率较小的旧数据/冷数据,将它们迁移到 S3 上可以降低存储成本,同时仍支持对这批数据的查询,但必要的代价就是会增加查询延迟。

Squawk[27] ─ 用于 Postgres 迁移的 Lint 工具
可帮助防止由于数据库迁移引起的意外宕机,鼓励遵循 Schema 和 SQL 最佳操作实践。

HypoPG 1.4.1[28] 发布
Postgres 的虚拟索引扩展,现已支持 Postgres 17。

pgmoneta 0.11[29] 发布
Postgres 备份/恢复解决方案,现已支持 macOS,并增加磁盘和网络速率限制功能。

Orafce 4.10.0[30] 发布
在 Postgres 模拟一组 Oracle 数据库中的函数和包,帮助从 Oracle 迁移到 Postgres。

Lantern 0.2.5[31] 发布
Postgres 的向量数据库扩展。

pgwire 0.22[32] 发布
Rust 编写的 Postgres wire 协议。


引用链接

[1]
 553 期: https://postgresweekly.com/issues/553
[2]
 554 期: https://postgresweekly.com/issues/554
[3]
 Hacking on PostgreSQL is Really Hard: https://rhaas.blogspot.com/2024/05/hacking-on-postgresql-is-really-hard.html
[4]
 What's New in pgvector v0.7: https://supabase.com/blog/pgvector-0-7-0
[5]
 The 150x pgvector Speedup: A Year in Review: https://jkatz05.com/post/postgres/pgvector-performance-150x-speedup/
[6]
 Understanding Postgres Schemas and search_path: https://www.dolthub.com/blog/2024-05-07-understanding-postgres-schemas/
[7]
 Papa's Got a Brand New RAG: https://postgresweekly.com/link/154445/web
[8]
 Postgres' supported platforms over time: https://peter.eisentraut.org/blog/2024/04/29/postgresql-supported-platforms-over-time
[9]
 cursor_tuple_fraction
 and PostgreSQL JDBC: https://www.cybertec-postgresql.com/en/cursor_tuple_fraction-in-postgresql-jdbc/
[10]
 Postgres Bloat Minimization: https://supabase.com/blog/postgres-bloat
[11]
 13 Tips to Improve INSERT Performance: https://www.timescale.com/blog/13-tips-to-improve-postgresql-insert-performance/
[12]
 Conversion Gotchas: Implicit Conversion in an Oracle to Postgres Migration: https://databaserookies.wordpress.com/2024/05/03/conversion-gotchas-implicit-conversion-in-oracle-to-postgresql-migration/
[13]
 Using Automatic DDL Replication with pgEdge Distributed PostgreSQL: https://www.pgedge.com/blog/using-automatic-ddl-replication-with-pgedge-distributed-postgresql
[14]
 (Bi)Temporal Tables, PostgreSQL and the SQL Standard: https://hdombrovskaya.wordpress.com/2024/05/05/3937/
[15]
 Nightly Postgres Backups via GitHub Actions: https://joshstrange.com/2024/04/26/nightly-postgres-backups-via-github-actions/
[16]
 When and Why Postgres Indexes are Ignored: https://notso.boringsql.com/posts/why-postgresql-indexes-are-ignored/
[17]
 Benchmarking Connection Poolers: PgBouncer, PgCat and Supavisor: https://tembo.io/blog/postgres-connection-poolers
[18]
 Test and Release pgrx Extensions with pgxn-tools: https://justatheory.com/2024/04/pgxn-tools-pgrx/
[19]
 LDAP Authentication in PgBouncer Through PAM: https://www.percona.com/blog/ldap-authentication-in-pgbouncer-through-pam/
[20]
 每周 PostgreSQL 人物 - Nazir Bilal Yavuz: https://postgresql.life/post/nazir_bilal_yavuz/
[21]
 Swiss PGDay 2024: https://www.postgresql.org/about/news/swiss-pgday-2024-schedule-published-2856/
[22]
 pg_back 2.3.0 发布: https://github.com/orgrim/pg_back
[23]
 pgdsat: https://github.com/HexaCluster/pgdsat
[24]
 pgAdmin 4 v8.6: https://www.postgresql.org/about/news/pgadmin-4-v86-released-2853/
[25]
 PeerDB v0.13.0: https://github.com/PeerDB-io/peerdb/releases/tag/v0.13.0
[26]
 pg_tier: Tier Data to External Amazon S3 Storage: https://github.com/tembo-io/pg_tier
[27]
 Squawk: https://squawkhq.com/
[28]
 HypoPG 1.4.1: https://github.com/HypoPG/hypopg
[29]
 pgmoneta 0.11: https://github.com/pgmoneta/pgmoneta/releases/tag/0.11.0
[30]
 Orafce 4.10.0: https://github.com/orafce/orafce
[31]
 Lantern 0.2.5: https://github.com/lanterndata/lantern
[32]
 pgwire 0.22: https://github.com/sunng87/pgwire

关于 Cloudberry Database

Cloudberry Database(可简称为“CBDB”或“CloudberryDB”)是面向分析和 AI 场景打造的下一代统一型开源数据库,基于 PostgreSQL 14.4 内核与 Greenplum Database 分布式架构,兼容 PostgreSQL 和 Greenplum 生态,遵循 Apache License 2.0 许可协议,致力于构建开放、友好、中立的开源社区。
GitHub 地址:https://github.com/cloudberrydb/cloudberrydb
官网主页:https://cloudberrydb.org/

👇🏻️关注公众号👇🏻️

⭐️为 Cloudberry Database 点个赞吧!⭐️

文章转载自ApacheCloudberry,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论