Pgkernel

From PostgreSQL wiki
Jump to navigationJump to search

首页

如需要修改本页,请注册帐号,注册地址 Postgres内核交流QQ群:191516184
近期活动
元旦后第一个周日即2012年1月8日晚8点-9点,网上第一次内核分析会议,讨论内核分析如何展开。
通讯工具:本群QQ语聊+文字,同时请大家备用Skype。
注意事项:请大家提前准备发言要点,同时可提前把要点发到QQ群。
报名方式:请大家愿意参加的加入本群。
活动已结束,点击这里查看会议纪要。 以往的活动请访问历史活动页面。

PG源码解析项目概要

PostgreSQL中国内核分析虚拟团队,启动于2011年12月12日,为协调大家共同进步,制定本共识:

  • 我们相信,众人若产生合力,将更有利于内核的分析。基本的合力有并行力和串行力。并行力是对任务的分而治之,串行力是对任务的接力。我们深知,受客观条件限制,许多人只能在一段时间内分析内核。
  • 内核分析的结果之一是产生众多高质量的分析文档。这种文档不仅为我们以及我们的后继者所理解,还应让许多人所理解。我们深知,这意味著文档的撰写会迭代许多版本。
  • 我们乐于深究细节,若暂时无法分析明白,我们愿意标记并公开出来,便于其他人员继续我们的工作。

附A:

内核相关项目

PGCloud

目标:pgcloud BETA,降低运维人员的工作负担, 提供高可用, 节约成本, 提供精细化的报告和监控平台。
项目地址:链接
文档:pgclound页面
启动时间:2011年
联系人:Digoal.Zhou,QQ:276732431

PostgreSQL技术演进史(项目代号PGStation)

目标:从Ingres开始一直到最新版本的PostgreSQL9.X,结合数据库发展史上重要的技术论文,用源代码说话,正说PostgreSQL的前世今生,并一探数据库各时代的脉搏。
文档:PostgreSQL技术演进史页面
联系人:孙鹏,QQ:66697561

SQL查询优化器(开放项目,欢迎参与)

目标:探索PostgreSQL中查询优化器的代码,探索查询优化技术,包含联机查询优化和物理查询优化以及多种两表连接算法、多表连接算法等。
文档:
SQL查询优化技术专业博客
PostgreSQL查询优化器源码分析--整体流程
PostgreSQL查询代价估算--目录
联系人:那海蓝蓝(欢迎加入,您也可以联系 QQ:32109872,或 查询优化技术专业QQ群:151467950)

SQL语句对应的ParserTree大全(开放项目,欢迎参与)

目标:根据SQL标准(例如参考SQL92),分析并绘制SQL语句对应的解析树大全,目的在于研究SQL标准与PostgreSQL解析器代码之间的对应关系,进而一探SQL标准的未来走向(例如数据挖掘语句的影响等)。
文档:postgresql中parse tree内存结构
联系人:暂无(欢迎加入,您也可以联系QQ群191516184)

复杂Group-By语句的CPU和I/O性能研究(开放项目,欢迎参与)

目标:探索PostgreSQL中各种复杂Group-By语句从Parser到Optimizer再到Portal之间代码,探索影响Group-By执行的效率问题,包含是否创建索引,以及数据量和数据分布的影响等。
文档:group by 语句从parsetree到portal全过程内存结构
联系人:暂无(欢迎加入,您也可以联系QQ群191516184)

MVCC深度探索(开放项目,欢迎参与)

目标:探索MVCC技术在PostgreSQL里的实现。
文档:MVCC深度探索页面
联系人:暂无(欢迎加入,您也可以联系QQ群191516184)

WAL深度探索(开放项目,欢迎参与)

目标:探索WAL技术在PostgreSQL里的实现。
文档:WAL深度探索

联系人:暂无(欢迎加入,您也可以联系QQ群191516184)

流复制(开放项目,欢迎参与)

目标:探索流复制技术在PostgreSQL里的实现。
文档:流复制
联系人:暂无(欢迎加入,您也可以联系QQ群191516184)

PGPool(开放项目,欢迎参与)

目标:探索PGPool技术。
文档:pgpool页面
联系人:暂无(欢迎加入,您也可以联系QQ群191516184)

GiST索引扩展与性能分析及其与各模块的关系研究(开放项目,欢迎参与)

目标:探索GiST的索引机制,以及在特定应用场景中的扩展,尤其是扩展了存储方案后的索引,包括时空数据的索引等,索引的性能评估机制等。
文档: Postgres中有关GiST索引的某些调用流程
曾经的经典libgist v.2.0/amdb v.1.0
联系人:高需,QQ:24572813

基础项目

调试环境搭建

目标:协助新的愿意研究内核的人员搭建调试环境
项目地址:PG内核调试环境搭建
联系人:徐军 email: jimxu123@gmail.com

相关资料

原理

参考资料

概要

内核解析各模块

启动和初始化

SQL引擎

存储

内存

事务、并发、恢复

其他