实习生招聘中 | Greptime & 开源之夏完美收官-感谢三位优秀学生!

原创
2023/12/12 11:40
阅读数 67

概述

“开源之夏”,是由 「中科院软件所」 “开源软件供应链点亮计划”发起并长期支持的一项暑期开源活动,一个专为在校学生量身打造的开源试炼盛宴。这一活动不仅激发了学生对开源项目的热爱,更培育了无数技术新星,为开源社区注入了活力。通过实践,参与者得以熟练掌握开源软件开发与维护的技术技巧,提前感受书面代码跳跃在生活中的感觉,切实体会代码实现的乐趣。

GreptimeDB 是一款用 Rust 编写的云原生、分布式、融合存储和分析的开源时序数据库,开发人员曾与诸如 OpenDAL、Apache Arrow 和 DataFusion 等优秀开源项目并肩作战,共同构建了一个坚实的技术栈,丰富了生态的同时,我们也希望回馈开源社区,开源之夏就是我们的启程之始。

项目介绍

GreptimeDB 选取了三个充满挑战的项目参与本年度的开源之夏,期待能和同学们碰撞出技术的火花。令人惊喜的是,同学们的热情和持之以恒让三个项目均圆满收官,也展示了大家作为未来技术新星的潜力和能力。

(开源之夏 & Greptime 项目展示)

项目一:实现 GreptimeDB 数据库对 Duration 和 Interval 两个数据类型的支持

🙇 描述:Duration 数据类型是度量特定类型的时间,可以用秒、毫秒、微秒或纳秒表示。Interval 数据类型通过计算两个时间点之间的天数来表示时间差异。这些数据类型在表示和建模真实世界的时序场景中非常有用。

🎓 认领同学:邹伟

📚 相关 Issue: https://github.com/GreptimeTeam/greptimedb/issues/1886

💡 相关 Pr: https://github.com/GreptimeTeam/greptimedb/pull/2265 https://github.com/GreptimeTeam/greptimedb/pull/2180 https://github.com/GreptimeTeam/greptimedb/pull/2146 https://github.com/GreptimeTeam/greptimedb/pull/2064 https://github.com/GreptimeTeam/greptimedb/pull/2117 https://github.com/GreptimeTeam/greptimedb/pull/1952

🌟 导师评价: 黄磊

邹伟同学在在开源之夏活动中为 Greptime 实现了 Interval 和 Duration 的数据类型,并编写了相关的运算函数。他的贡献极大地丰富了 GreptimeDB 的功能,使得它更加适用于时间数据的存储和处理,提升了用户的使用体验和数据处理的效率。尽管他之前缺乏开源项目的参与经验,但通过实现 Interval 和 Duration 数据类型及相关运算功能,展现了其快速学习和适应的能力,也证明了他在开源社区和软件开发方面的潜力和热情。

除了功能性的相关贡献,邹伟同学对于软件质量和可靠性的提升也做出了积极的努力。通过为 GreptimeDB 的 Interval 和 Duration 数据类型增加大量的测试用例,他进一步确保了新功能的稳定性,发现了不少历史遗留的 bug,也为未来可能出现的问题提供了回归测试的保障。这些贡献展现了他对于软件工程实践的深刻理解,特别是单元测试和代码维护性方面。

短短几个月,邹伟为 GreptimeDB 贡献的 PR 达 26 个,不仅完成了开源之夏的课题,也开始涉及到存储引擎等数据库内核模块,成长为 GreptimeDB 的核心开发者之一。

项目二:实现滑动采样窗口函数的语法及计算

🙇 描述:查询并聚合一个给定长度的时间范围的数据是时序数据常见的一种查询模式,例如 PromQL 中的 Range Selector,而 GreptimeDB 计划在 SQL 界面中实现类似的能力。与 WINDOW 语法不同,滑动采样窗口函数会按固定的步长及范围进行计算,例如:查询每日气温的周平均值;该查询的步长是一天(每日气温),每一次计算都使用过去一周的数据求平均。该项目需要从拓展 SQL Parser 开始,定义并实现滑动采样窗口函数的语法,并拓展逻辑计划器来实现相关语句的计划生成,最后实现对常见聚合算子的支持。

🎓认领同学:吴静迪

📚 相关 Issue: https://github.com/GreptimeTeam/greptimedb/issues/1662

💡 相关 Pr: https://github.com/GreptimeTeam/greptimedb/pull/2138 https://github.com/GreptimeTeam/greptimedb/pull/2229 https://github.com/GreptimeTeam/greptimedb/pull/2557 https://github.com/GreptimeTeam/greptimedb/pull/2664 https://github.com/GreptimeTeam/greptimedb/pull/2697 https://github.com/GreptimeTeam/greptimedb/pull/2770 https://github.com/GreptimeTeam/docs/pull/618

🌟 导师评价: 夏锐航

吴静迪同学在工作中完成了多项关键任务,给 GreptimeDB 的功能做出了重要贡献。在参与 Range 查询项目时,成功完成了从 parser 到算子的实现工作。也因为其在项目中的优秀表现,成为了 GreptimeDB 团队的实习生,在系统的自身可观测方面完成了大量工作,为 GreptimeDB 的稳定性和可靠性提供了保障。

项目三:在 GreptimeDB 中执行 TRUNCATE TABLE /清除表功能

🙇 描述:实现 GreptimeDB 的 TRUNCATE TABLE 功能;TRUNCATE TABLE从表中删除所有行。它类似于没有 WHERE 子句的 DELETE 语句,但比逐行删除更快。通过该功能的实现,提升 GreptimeDB 的性能。

🎓认领同学:苏灏

💡 相关 Pr: https://github.com/GreptimeTeam/greptimedb/pull/1932 https://github.com/GreptimeTeam/greptimedb/pull/2002 https://github.com/GreptimeTeam/greptimedb/pull/2090 https://github.com/GreptimeTeam/greptimedb/pull/2097 https://github.com/GreptimeTeam/greptimedb/pull/2335 https://github.com/GreptimeTeam/greptimedb/pull/2414

🌟 导师评价: 杨颖文

苏灏同学为 GreptimeDB 实现了 TRUNCATE TABLE 的功能。他的代码质量过关,可读性良好,符合社区规范。实现相关功能时也都编写了单元测试和 SQL 集成测试来保证代码的可靠性。期间,社区正在进行大规模重构和新存储引擎的开发,他也积极帮助社区将该功能移植到了新的引擎上,为社区分担了大量的工作。

总结

GreptimeDB 作为开源之夏的首次参与者,收获颇丰,我们的三个项目均圆满结项。每一个项目不仅是技术的挑战,更是团队合作与个人成长的见证。项目中的参与者逐渐作为实习生转化为团队的新鲜血液,我们希望通过开源之夏&Greptime 的项目平台帮助同学完成从校园理论到社会实践的平稳过渡,希望他们不仅学习开源文化,还能了解开源社区的运作方式。

一段代码,一次提交,一次测试,每一步都是成长的脚印。从功能实现到问题排查,每一个贡献都是价值的体现。在这个过程中,同学们不仅为 GreptimeDB 带来了新的功能,还提升了现有系统的稳定性与性能。他们的工作不仅限于解决眼前的问题,对未来挑战的预见也能做出同步的思考和准备。

不忘初心,方得始终。开源不仅是一门技术,更是一种精神。有人说,刷 LeetCode 可能是一种高效的面试准备,但参与到一个优秀的开源项目中,将你的代码贡献给全世界,无疑是更深层次的技术积累与职业磨练。

特别感谢开源之夏的组织方,感谢他们不仅为我们搭建了一个展示才华的舞台,更为开源社区注入了新的活力。

我们期待着在未来的日子里,能够继续与更多的优秀学生相遇。

期待明年的开源之夏,再次相会在代码的海洋。🌊

💃 我们招实习生啦!🏃

工作职责:

参与 GreptimeDB 设计和研发,包括但不限于存储引擎、查询引擎、分布式系统等; 负责相应模块的文档编写和维护; 其他研发和支持工作。

工作要求:

全日制本科及以上学历; 牢固掌握操作系统、数据结构和编译原理等计算机基础课程; 至少掌握和熟练使用一门编程语言,如 C/C++/Golang etc.; 有过数据库研发、 Rust 语言的学习和使用经验者优先; 参与过开源项目贡献者优先; 能实习三个月以上,每个月全职投入 15 天以上。

我们能提供:

有竞争力的实习待遇; 每月异地租房补贴(可 base 北京或杭州); 优秀同学可远程; 优秀的导师和自由开放的环境。

联系方式: xzhuang@greptime.com

关于 Greptime 的小知识:

Greptime 格睿科技于 2022 年创立,目前正在完善和打造时序数据库 GreptimeDB,格睿云 GreptimeCloud 和可观测工具 GreptimeAI 这三款产品。

GreptimeDB 是一款用 Rust 语言编写的时序数据库,具有分布式、开源、云原生和兼容性强等特点,帮助企业实时读写、处理和分析时序数据的同时降低长期存储成本;GreptimeCloud 可以为用户提供全托管的 DBaaS 服务,能够与可观测性、物联网等领域高度结合;GreptimeAI 为 LLM 量身打造,提供成本、性能和生成过程的全链路监控。

GreptimeCloud 已正式公测,欢迎关注公众号或官网了解最新动态!

官网:https://greptime.cn/

GitHub: https://github.com/GreptimeTeam/greptimedb

文档:https://docs.greptime.cn/

Twitter: https://twitter.com/Greptime

Slack: https://greptime.com/slack

LinkedIn: https://www.linkedin.com/company/greptime/

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部