让PG停摆一周的大会?2024 PGConf.dev 技术大盘点(下)

PGCon.Dev 的前身是 PGCon —— 最知名的 PostgreSQL Hacker 年度聚会,也可以说是决定 PostgreSQL 未来的会议。从 2007 年成立以来,一直都是在加拿大渥太华举办至今。

有多隆重呢?PG 核心组的 Peter Eisentraut 在会后做了一个统计,在这次 PGCon.Dev 期间 PostgreSQL 代码库没有一次 Commit 发生,出现了二十年来持续时间最长的停摆[1] —— 整整六天半!为啥,因为开发者全都来参会啦!”

......

现场更多互动的交流可移步 @冯若航 老师这篇文章

《让PG停摆一周的大会:PGCon.Dev参会记

以下内容集结了各位大咖对 PG(PostgreSQL)的独到见解与深刻思考,由IvorySQL社区精心整理,与大家一起分享。欢迎大家积极转发分享,点亮“在看”,让更多人领略 PG 的魅力与力量!

Streaming I/O and vectored I/O

Thomas Munro

图片

Thomas 来自微软,是PG社区的主要 committers之一。Thomas 阐述了目前PostgreSQL 每次读和写入数据文件的大小为 8KB。这是因为PG每次调用 ReadBuffer 仅处理一个数据块,而底层无法优化超出这一限制。社区在探讨一种新“流式”编程模型:使用回调函数提前指明下一个需要的块,然后从“流”中提取缓冲区。这样,流基础设施可以尽可能地预见未来的需求,从而:

  • 系统性地对随机访问使用 POSIX_FADV_WILLNEED,替代零散的临时建议。

  • 构建更大的向量化 I/O;例如,一个 preadv() 调用可以替代 16 个 pread() 调用。

同时介绍了目前 streaming 的开发状态。

This corresponds to commitfest entry https://commitfest.postgresql.org/46/4532/ (and earlier related work).

Advice is seldom welcome but efficacious

Tatsuro Yamada

图片

Yamada 来自日本的 NTT OSS,是PG代码的一位 contributor,同时是pg_plan_advsr的作者 。Yamada 主要讲解了 PostgreSQL 中一些为用户提供建议的辅助功能,例如,与配置参数、分区和执行计划相关的功能。同时介绍了其本人开发的执行计划建议器(pg_plan_advsr)的一些主要功能及相关实现。此外还给PG社区提出一些反馈意见,包括扩展 stats 的应用范围,比如 joins;提高 stats 的可用性,在 EXPLAIN 时显示stats等。

How Autovacuum Goes Wrong: And Can We Please Make It Stop Doing That?

Robert Haas

图片

来自 EDB 的 PG 核心成员 Robert 主要解释了 autovacuum 如何决定哪些表需要进行 vacuum 和 analyze 以及何时执行这些操作,重点是这些算法可能出错的情况。Robert 也讲述了autovacuum 一些主要的错误,包括vacuum速度慢,vacuum被卡住,反复vacuum或者自行跳过vacuum等问题,同时还讨论了改进 autovacuum 以避免这些问题的可行性。

Postgres and the Artificial Intelligence Landscape

Bruce Momjian

课件下载:https://momjian.us/main/writings/pgsql/AI.pdf

图片

Bruce 此次的主题是 PG 与人工智能领域。Bruce 简述了 人工智能,机器学习的基本知识,然后通过一个为PG 创建一个基于 plperl 的扩展来阐述如何选取attributes,为每个 attribute 创建机器学习所需的 neurons,创建 training data,通过调整 weight 等操作对机器学习提供反馈。演讲多次被问题打断,未完成。

Building Petabyte-Scale PostgreSQL Deployments

Chistopher Travers

课件下载:

https://www.pgevents.ca/events/pgconfdev2024/sessions/session/135/slides/30/Bagger_Talk (3).pdf

图片

Christopher 来自 Delivery Hero APAC 有多年的 DBA 经验。Christopher 讲述了用基于 PostgreSQL 的内部解决方案替换了 ElasticSearch 的原因,早期在 Adjust 的设计,及现在的开源 Bagger。同时讲述了基本架构,数据流,当前项目的状态,及未来的计划。Christopher 还分享了一些心得,比如清晰的了解需求,不同架构适应于不同的需求,读写扩展的困难等等。

When Hardware and Databases Collide

Margo Seltzer

图片

来自 UBC 大学的教授 Margo Seltzer 为大家奉献了精彩的主题,当硬件与数据库碰撞。Margo 阐述了硬件发展对数据库的影响,使用 GPU 处理数据库的不同策略。

Multi-threaded PostgreSQL?

Heikki Linnakangas

图片

来自 Neon 的 Heikki 此次主要是向社区阐述实现 multiple threads 的愿景,multiple threads 和 multiple process 的架构,优缺点,应该如何正确使用 multiple threads,之前的一些尝试,以及 PG 切换到 multiple threads 的挑战等。后续,有针对 multiple threads 的专题讨论及任务调研的初步分工。

Enhancing PostgreSQL Plasticity: New Frontiers in Memory Management

Krishnakumar Ravi

图片

来自微软的 Krishnakumar (KK) 阐述了由于 PG 对共享内存采取了非常静态的管理方法,因此无法在运行时收缩或者扩展共享内存。KK 分享了一些社区正在进行的增强内存管理可插拔性的一些想法。

Vectors: how to better support a nasty data type in PostgreSQL

Jonathan Katz

图片

来自亚马逊的 Jonathan 是 PG 的核心成员,也是此次活动的主要组织者。Jonathan 阐述了向量对数据库高效存储和索引的重要性和挑战。同时由于人工智能过去一年的快速发展也导致 pg_vector 的快速迭代发布。Jonathan 讲述了当向量维度增加时对对数据库存储和索引带来的快速膨胀,以及通过多维度找到邻居节点的挑战。

Scaling past RDS PostgreSQL's vertical scaling limits: Lessons and guidance on the largest PostgreSQL workloads

Alisdair Owens, Andrei Dukhounik

图片

来自亚马逊的 Alisdair 和 Andrei 共同分享了多年来亚马逊在管理大型,高吞吐量的 PG 所面临的性能和可用性的挑战,以及在维护大型 PG 方面的经验,包括垂直扩展,数据库迁移,升级等方面。

Performance Improvements of Partitioning: Past and Future

Yuya Watari

图片

Yuya 是日本 NTT 开源软件的工程师。Yuya 在演讲中阐述了过去 PG 对高度分区表 Join 处理不当的地方导致 O(n^2)计算时间量,通过 hack planner 可以将计算量调节为 O(n)。同时分享了这个做法的优缺点,测试案例,以及一些 profile 的分析过程。

SQL standard WG update

Peter Eisentraut

图片

PG 核心成员 Peter Eisentraut 分享了目前 SQL 标准的更新情况和近期的 SQL 标准化会议。

Multithreading (31日 Unconference)

社区核心成员

图片

社区普遍对参与 PG multiple threads 讨论比较感兴趣。目前几位资深的 PG 核心成员主要讨论了,signal 在multiple threading 情况先如何处理,全局变量的管理,插件管理,如何取代当前的 pid ,整体refactor,thread safe API 等话题。最后初步确定了对这些关键 topics 负责调研的人选。

Table AM API (31日 Unconference)

Oriole dbds

图片

关于 Table AM API 的讨论主要由 Oriole 主导。Oriole 建议为 pg_am 增加 wrapper  pg_am_impl 从而更容易引进其他关于 table 访问的优化和改进。但通过讨论后,社区成员人为意义不大,不足以让更多的 PG 使用者受益。对此没有进一步的计划。

至此,2024 PGCon.Dev 就告一段落了。瀚高作为亚太地区PostgreSQL国际社区顶级贡献者之一,长期深度参与PostgreSQL国际社区发展与建设。

多年来,瀚高积极组织和参加pgconf.dev、PostgresConf、PostgresConf.CN、PGConf.Asia 等国内外会议及活动,与全球顶尖的PostgreSQL开发者、行业权威共同探讨PG最前沿技术与未来战略。

与此同时,瀚高积极传播大会的核心技术、创新理念及最佳实践,不仅彰显了其在开源领域的专业实力与前瞻视野,更为PostgreSQL国际社区的持续繁荣和全球推广注入了强劲动力。

*以下内容来自 @冯若航 整理

一些 PGCon.Dev 相关的博客与文章:

[1] 二十年来持续时间最长的停摆: https://peter.eisentraut.org/blog/2024/06/04/how-engaging-was-pgconfdev-really
[2] Jonathan Katz: https://jkatz05.com/
[3] Melanie Plageman: https://postgresql.life/post/melanie_plageman/
[4] 数据库管理系统可扩展性的调查与评估: https://abigalekim.github.io/assets/pdf/Anarchy_in_the_Database_PGConfDev2024.pdf
[5] 索引建议不受待见,但很管用: https://www.pgevents.ca/events/pgconfdev2024/sessions/session/62-advice-is-seldom-welcome-but-efficacious/
[6] 推给你的那个人莫不是我: https://github.com/pgvector/pgvector/issues/76
[7] 写过一篇文章研究过这个问题: https://pigsty.cc/zh/blog/admin/collate/
[8] Andreas Scherbaum PostgreSQL Development Conference 2024 - Review: https://andreas.scherbaum.la/post/2024-06-14_postgresql-development-conference-2024-review/
[9] PgCon 2024 Developer Meeting: https://wiki.postgresql.org/wiki/PgCon_2024_Developer_Meeting
[10] Robert Haas: 2024.pgconf.dev and Growing the Community: https://rhaas.blogspot.com/2024/06/2024pgconfdev-and-growing-community.html
[11] How engaging was PGConf.dev really?: https://peter.eisentraut.org/blog/2024/06/04/how-engaging-was-pgconfdev-really
[12] Cary Huang: PGConf.dev 2024:在温哥华塑造 PostgreSQL 的未来: https://www.highgo.ca/2024/06/11/pgconf-dev-2024-shaping-the-future-of-postgresql-in-vancouver/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/856941.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

建筑驱鸟设备 | 建筑专用超声波驱鸟器

从半夜的鸣叫到频繁的鸟粪污染,鸟类活动有时会成为城市居民不得不面对的小小困扰。通过合理的驱鸟方法,我们可以有效地减少鸟类对建筑物的侵扰,保护建筑物的完好和安全,同时维护城市居民的生活质量。 建筑专用超声波驱鸟器&#x…

为什么伦敦金新手不能用一小时图及以下的时间周期?

刚进入伦敦金市场的投资者,一般不建议使用较低的时间周期,如1小时图或以下。不仅如此,新手或者兼职投资者会被要求使用较高的时间周期交易,如4小时图或日线图,这有什么道理呢?下面我们就来讨论一下。 新手的…

从零开始如何学习人工智能?

说说我自己的情况:我接触AI的时候,是在研一。那个时候AlphaGo战胜围棋世界冠军李世石是大新闻,人工智能第一次出现我面前,当时就想搞清楚背后的原理以及这些技术有什么作用。 就开始找资料,看视频。随着了解的深入&am…

社区团购系统智慧门店物流配送系统开发,支持小程序公众号。

目录 前言: 一、为什么要做社区团购小程序? 二、怎么做一个社区团购小程序? 三、制作属于自己的社区团购小程序有什么好处? 总结: 前言: 社区团购是针对小区居民或群体开发的在线购物平台,…

win10手动安装stable-diffusion-webui

目录 1.python下载安装 2.git下载安装 3.stable-diffusion-webui下载 4.安装s-d-webui的依赖包(用国内镜像提速) 5.git下载的stable-diffusion-webui,依赖包提示已安装,但运行webui-user.bat后,又开始下载 6.修…

RedTail 僵尸网络积极利用新漏洞发起攻击

自从 Palo Alto 的 PAN-OS 漏洞公开披露以来,研究人员发现已有攻击者将该漏洞纳入武器库中。 CVE-2024-3400 2024 年 4 月 11 日,Palo Alto 发布公告称基于 PAN-OS 的产品中存在的 0day 漏洞已经被攻击者利用,安全公司 Volexity 已经发现了…

配置 python 脚本操作Excel 环境

在已装python的前提下 一、安装依赖库 pip install pandas pip install openpyxl安装完后,可以在 Python 中运行以下命令来查看 pandas 或 openpyxl 的安装路径: import pandas as pd print(pd.__path__)import openpyxl print(openpyxl.__path__)二、测…

LearnOpenGL - Android OpenGL ES 3.0 绘制纹理

系列文章目录 LearnOpenGL 笔记 - 入门 01 OpenGLLearnOpenGL 笔记 - 入门 02 创建窗口LearnOpenGL 笔记 - 入门 03 你好,窗口LearnOpenGL 笔记 - 入门 04 你好,三角形OpenGL - 如何理解 VAO 与 VBO 之间的关系LearnOpenGL - Android OpenGL ES 3.0 绘制…

光纤中的数值 2.405 是怎么一回事?

在光纤通信中,光线的传播依赖于纤芯和包层之间的折射率差异。 即,当光线从纤芯入射到界面上时,如果入射角大于临界角 θ0,将发生全反射,没有光能量透射至包层而泄漏出去,此即光纤导光原理。 反映到光纤的端面,在光纤端面的光线,当入射角必须小于光纤的孔径角 α0 ,此时…

高效管理:好用的项目管理工具推荐

在当今快速变化的商业环境中,高效的项目管理工具能够显著提升团队的生产力和项目的成功率,还能有效地跟踪项目进度。所以,一款优秀的项目管理工具首先要具备先进的项目管理理念,支持多种研发管理和项目管理方法论,才能…

名称申请不了商标,可以受保护不!

前几天个网友说要申请注册个商标名称,发来名称让普推商标知产老杨帮忙检索了下,发现有同名的被驳回,而且是做过驳回复审被驳回,而且是绝对理由驳回的,易使消费者对商品的品质等特点产生误认,不得作为商标使…

IntelliJ IDEA 2024 mac/win版:编程利器,智慧之选

IntelliJ IDEA 2024是一款由JetBrains精心打造的集成开发环境(IDE),专为Java等编程语言量身打造,同时支持多种其他语言,为开发者提供了卓越的开发体验。 IntelliJ IDEA 2024 mac/win版获取 这款IDE凭借其出色的智能化和高效性,赢…

红军九大技战法

一、动态对抗,线上社工持续信息追踪 发起攻击前,发起攻击前,尽可能多的搜集攻击目标信息,做到知己知彼,直击目标最脆弱的地方。攻击者搜集关于目标组织的人员信息、组织架构、网络资产、技术框架及安全措施信息&#x…

java基于ssm+jsp 高校四六级报名管理系统

1前台首页功能模块 高校四六级报名管理系统,在系统首页可以查看首页、四六级报名、新闻资讯、我的、跳转到后台、在线客服等内容,如图1所示。 图1系统功能界面图 学生登录、学生注册,在注册页面可以填写学号、密码、姓名、学院、班级、手机、…

现货黄金应用价格行为交易所需要的环境

在现货黄金投资中,投资者常用价格行为交易法来分析走势。简单来说,这种方法就是只看K线和支撑阻力位,顶多加一些简单的指标,以此构建分析和交易的系统。由于价格行为简单易学,现在的投资者或多或少都在使用这个方法。但…

短视频批量下载工具源码逻辑解析(软件)

短视频批量提取第三篇关于视频提取下载的思路 一:概述 因为上一篇不完整,这里其实就是补充第二篇关于源码思路。这里不针对视频评论的提取,只对视频分享链接批量导入下载进行思路解析 二:难点 通常情况下如果直接访问详情页进行…

【稀疏三维重建】Flash3D:单张图像重建场景的GaussianSplitting

项目主页:https://www.robots.ox.ac.uk/~vgg/research/flash3d/ 来源:牛津、澳大利亚国立 提示: 文章目录 摘要1.引言2.相关工作3.方法3.1 背景:从单个图像中重建场景3.2 单目 4.实验4.14.2 跨域新视角合成4.3 域内新视图合成4.4…

24h业务系统不间断,HA双活存储能做到

封面 Infortrend GS统一存储支持HA双活功能。之前GS的高可用性是通过双冗余控制器设计来实现的。现在企业用两台GS设备的HA双活功能,进一步增强高可用性。HA双活功能在两台GS存储系统上保存相同的数据副本,保证数据不会丢失。在一台GS故障时另一台继续…

vb.net c#一键编绎引用DLL如何做?编绎成独立EXE

.net c#一键编绎引用如何做? 3个工程有依懒关系 ClassLibrary1,ClassLibrary2,MainProject (主工程) ClassLibrary2依赖ClassLibrary1,MainProject依赖前2个 如何实现一键按顺序编绎,自动添加前…

CesiumJS整合ThreeJS插件封装

最近做项目有一个三维需求使用CesiumJS比较难以实现,发现THREEJS中效果比较合适,于是准备将THREEJS整合到CesiumJS中 为实现效果所需我们找到官方Integrating Cesium with Three.js博客,于是根据该博客提供的思路去实现整合 文章目录 一、创…