阿里巴巴编程之夏(ASoC)是面向全球18岁及以上本科、硕士、博士高校学生的技术普惠计划,它旨在鼓励高校学生深度参与开源开发活动,激励学生以第一视角感受开源世界的魅力。ASoC 以阿里巴巴开源技术力量作为媒介,为高校学生们和开源社区搭建桥梁。

学生可自主选择感兴趣的项目进行申请,并在中选后获得该软件资深维护者(社区导师)亲自指导的机会。根据项目的难易程度和完成情况,参与者还将获取活动奖金和结项证书。

PolarDB开源社区参与项目已经发布,欢迎各位同学报名!

社区简介

作为全球数据库领导者,阿里云数据库坚定拥抱开源,多年来积极参与开源社区建设,为MySQL、PostgreSQL等社区做过多项贡献。2021年,阿里云把数据库开源作为重要战略方向,正式开源自研核心数据库产品PolarDB,助力开发者和客户通过开源版本快速使用阿里云数据库产品技术,并参与到技术产品的迭代过程中来。2021年5月,阿里云率先开源PolarDB for PostgreSQL分布式版,在10月的云栖大会上,阿里云进一步开源了云原生分布式数据库PolarDB-X和PolarDB for PostgreSQL共享存储版,聚合社区力量,繁荣云原生分布式数据库生态,服务广大开发者,推动技术变革。

PolarDB 开源社区是阿里云数据库开源产品PolarDB的技术交流平台。作为开源的数据库产品, 离不开用户和开发者的支持, 大家可以在社区针对PolarDB产品提问题、功能需求、交流使用心得、分享最佳实践、提交issue、贡献代码等。

参加权益

1.参与顶级开源项目贡献

通过编程之夏,你将深度参与国际顶级开源项目,获得资深开源导师一对一的指导,了解开源协作流程,提升研发技能。

2.丰厚奖学金和贡献者证书

顺利结项后,你将获得由阿里巴巴编程之夏项目组提供的丰厚奖学金和开源贡献者证书,你的代码更有机会被项目正式采纳在全世界运行!

本届编程之夏的题目难度分为3档,根据不同的难度将获得不同的奖学金,具体任务的难度可以在开源项目任务清单描述中找到。和往届不同,今年开放了入门级难度的题目,虽然没有奖金,但你可以获得活动证书和开源纪念品。

3.绿色招聘通道

如果你是非应届生,你将有机会获得项目制实习机会;如果你是应届生,ASoC将为你提供阿里巴巴集团校招“早鸟”内推通道,为你匹配最合适的岗位。

项目简介

本次活动,PolarDB 开源社区共提交了 4 个开发类项目课题:

项目1.[ASoC] PolarDB HTAP 支持并行加速创建物化视图

题目描述:

在 CREATE MATERIALIZED VIEW(创建物化视图)时需要按需对表中的元组进行扫描。

PostgreSQL: Documentation: 14: 41.3. Materialized Views

任务目标:

通过 PolarDB 的 HTAP 能力并行加速这个过程。

项目技术要求:

熟悉C语言及Linux上的相关调试技术,对 PostgreSQL 内核有一定了解。

题目难度:

中等

导师信息:

Zhang Jingtang,@mrdrivingduck , ASoC Mentor, PolarDB-for-PostgreSQL maintainer.

zhangjingtang.zjt@alibaba-inc.com(联系导师请附上个人简历)

项目详情:https://github.com/ApsaraDB/PolarDB-for-PostgreSQL/issues/247

项目2. [ASoC]PolarDB HTAP支持COPY导入数据的分布式加速

题目要求:

  • 为了使PolarDB PG具备更强的导入导出数据的能力,可以利用PolarDB PX并行执行来加速COPY命令。实现的效果为,COPY命令在读取表导出csv的时候,可以多个读节点同时并发读取表来进行加速;

  • 在COPY写入表的时候,可以在单个写节点起多个写进程并发写入。

任务目标:

实现并行读并行写的COPY功能

题目难度:

中等

导师信息:

He kewen,@HBKO ,ASoC Mentor, PolarDB-for-PostgreSQL Committer.

hekewen.hkw@alibaba-inc.com(联系导师请附上个人简历)

项目详情:https://github.com/ApsaraDB/PolarDB-for-PostgreSQL/issues/246

项目3. [ASoC]PolarDB-X支持DBLink

题目描述:

DBLink功能允许在一个数据库连接另一个远程的数据库。DBLink创建好之后,可以像访问本地数据库一样访问远程数据库(例如本地库与远程库中表的JOIN等操作)。

任务目标:

  • 支持PolarDB-X创建到MySQL与PolarDB-X的DBLink

  • 支持对于远程库的DML、DQL、DDL操作

  • 尽可能的下推更多算子到远程库

  • 支持相关的系统视图、权限管理等

项目技术要求:

熟悉Java语言、了解数据库内核基本结构和DBLink基本过程

题目难度:

导师信息:

Sun Mengshi,ASoC Mentor, PolarDB-X Committer.

mengshi.sunmengshi@alibaba-inc.com(联系导师请附上个人简历)

项目详情: https://github.com/ApsaraDB/galaxysql/issues/57

项目4. [ASoC]PolarDB-X Operator 混沌测试实践

题目描述:

对于分布式数据库,稳定性和容错是最基本的要求之一。但是面对复杂多变的运行环境,我们无法预测集群下一秒会发生什么,如何在这样的环境下保证用户数据的安全是个无法避免的问题,而混沌测试正是为了解决这一问题而生。

Chaos Mesh 是一个通用的混沌测试解决方案,为 Kubernetes 提供了全方位的故障注入方法,涵盖了 Pod、网络、文件系统甚至内核的故障。PolarDB-X Operator 是 Kubernetes 上的PolarDB-X 集群运维系统,支持生命周期管理、备份恢复、监控等能力。

任务目标:

本任务希望基于 PolarDB-X Operator 和 Chaos Mesh,构建面向分布式数据库PolarDB-X的混沌测试框架,通过主动注入故障的方式,一方面有助于发现潜在的问题并快速修复,另一方面也能验证 PolarDB-X 的稳定性与容错能力。

项目技术要求:

熟悉Golang、Chaos Mesh,了解断网、弱网等常见系统故障

题目难度:

导师信息:

Wu Di,@vettalwu,ASoC Mentor, PolarDB-X Committer.

vettal.wd@alibaba-inc.com(联系导师请附上个人简历)

项目详情:https://github.com/ApsaraDB/galaxysql/issues/56

活动参与方式

1.学生参与方式

学生自由选择项目,与社区导师沟通实现方案并撰写项目计划书。被选中的学生将在社区导师指导下,按计划完成开发工作,并将成果贡献给社区。社区评估学生的完成度,主办方根据评估结果发放活动奖金给学生。

2.活动日程

活动里程碑如下,默认时区为北京时间(GMT+8)。

3.欢迎入群与导师沟通

目前为项目发布与审核、学生与导师沟通阶段,各位学生如果对上述项目感兴趣,欢迎你加入 PolarDB 开源社区的阿里巴巴编程之夏项目交流群,与对应的导师进行沟通了解。

4.参考资料

PolarDB-X源码开放地址:

计算层: https://github.com/apsaradb/GalaxySQL
存储层: https://github.com/apsaradb/GalaxyEngine

PolarDB-for-PostgreSQL源码开放地址:


https://github.com/alibaba/PolarDB-for-PostgreSQL

技 术 好 文

企 业 案 例