参加开源贡献后,大厂向我抛出了橄榄枝

本文作者分享了他如何从接触开源项目openLooKeng开始,逐步深入理解并贡献代码,解决查询效率问题,最终提升个人技能并成为求职亮点的故事。通过参与openLooKeng社区,作者不仅提升了编程能力,还体验到技术的乐趣,并在求职过程中获得了大厂的认可。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

–本文为社区伙伴heatao原创投稿,未进允许请勿转载。

– 转载需联系openLooKeng社区小助手微信。

前言

2021 年,openLooKeng社区又迎来了新的蓬勃发展,社区活跃度持续提高。目前,openLooKeng社区用户数达到100k+,社区下载量突破100k+,累计收到2000+PR,1500+PR,1500+comments。当前社区汇集了30+来自金融、政府、互联网、教育等不同行业的合作伙伴加入。如今社区一派生机勃勃,绿荫环绕的景象。


近期,openLooKeng社区特推出《社区超新星》专栏,分享社区“爱马仕”们挥洒汗水所得的开源成果以及参与开源过程中发生的小趣事

如果你也想让大家看见闪闪发光的你,欢迎投稿告诉社区你的故事。

优秀故事还会获得,社区提供的走心奖品和纪念品哦!

投稿请加openLooKeng社区小助手微信(openLooKengoss);并注明“投稿”。

感谢大家的支持!


我们故事的主人公:

“通过接触开源项目,我收获了很多。让我真正深入到底层与框架,实现了让自己的代码为人所用;让学计算机的我更加坚定了对于技术的不懈追求;同时,让我惊喜的是,这次经历成为了我求职路上的闪光点!”

我与开源的缘起

2020年底的某天,老大交给我一项任务,让我去调研一下。听老大说openLooKeng的OLAP引擎是一款“跨数据源跨地域的数据虚拟引擎”。

我立马来了兴趣,立刻上网搜索,以一种看得见摸得着的方式知道openLooKeng是什么?可以查Mysql,可以查Hive,特性很不错,可以缓存,还可以启发式引擎查询效率。这家伙有点东西啊!用老大的话来说,参与开源项目,“这是个锻炼⾃⼰的机会,做得好我们也能参与开源,回馈社区。”

但是!很快我就发现,openLooKeng不支持ClicKHouse,可我们这边最多用的就是ClicKHouse,我突然虎躯一震,意识之前用的最多的就是ClicKHouse,搞这个不太会,但是一想到会接触到更多的技术,为开源社区贡献自己的一份力,我就瞬间来了斗志,决心接受老大给的项目。

我的开源故事

先了解概念,任何⼀个⼤数据引擎出现,都⼀定是有其⾯临的场景,为了解决痛点⽽出现的,就像 ClickHouse单表查询的能⼒⾮常优秀,在⼀些报表业务上很适合。⽽openLooKeng,主要是做联邦查询,解决跨 数据源跨地域的查询能⼒。

openLooKeng实现跨数据源跨地域⼤数据分析是基于Connector实现的,不同的Connector提供了查询不同数据 源的能⼒。不同数据源的连接器只需要实现SPI对应的接⼝就可以被openLooKeng调⽤。所以实际上只需要实现 ClickHouse connector就⾏了,并不涉及对于 coordinator 和 worker 部分的修改。

让openLooKeng能够查询ClickHouse很容易,我很快完成了,但是很快就发现,查询效率却很低,那么,参与开源项目遇到的瓶颈来了:

如何利用openLooKeng,提高查询ClickHouse的效率?

查阅资料,在与社区小伙伴交流过程中,我了解到connector。而如果想要提⾼查询的效率,可以利⽤数据源本身的计算能⼒,将算⼦下推,减少数据的传输,让filter接近数据源。 要下推的话需要对语法进⾏适配,需要对应语法哪⾥有区别,对 SQL进⾏测试。这些可难不倒我(我已不是⼏年前的代码菜⻦!),因此完成后,我信⼼满满的交给了测试的同学。

过了⼏天,测试的同学反馈说,“这啥呀,好多业务的SQL运⾏好慢呀。”我辩解道,“只能将openLookeng识别的函数下推到ClickHouse中。”随即,我想起,如果只能将openLooKeng的函数进⾏下推,那查询效率是⽆法接受的。⻁哥说,“没办法,只能采⽤⼀种较丑的⽅式进⾏映射,你先把业务要⽤的这⼏种映射到olk有的近似 函数上吧。”这样的做法虽然能⽤,但是未来有新的业务函数⼜怎么办呢?

事情的转机出现在 openLooKeng1.3版本的发布,在这⼀版本中,增加了对于外部函数的⽀持,我赶快将所有的业务代码都修改了映射⽅式,这次终于能进⾏性能测试了。在内部测试没问题后,我将代码PR到了社区的版本,虽然所做的功能不多,但是能为社区贡献自己的力量,还是很有成就感的

个人技能UP,求职路的闪光点

作为当时还是在校学⽣的我,之前最多就是看看开源项目,自己clone下来玩玩,不会PR上去,所以是我第一个,真正意义上正式参与实践的开源项目。接触openLooKeng后,使得我个人能力有了很大的提升,代码更规范,同时也对测试更加重视了!学习优秀的开源代码和设计模式,并且亲自去实践,去debug,去试验新的feature,这些都会对编程能力带来很大的提升。同时,还会感受到技术的有趣之处!

在学生阶段,其实很多项目都是Demo项目,不需要向别人负责,面临的场景也较为单一。而开源项目,属于较为深入的了解一个实际的项目,项目会经受大家的考验,会在社区的issue中逐渐做到完善,面临的场景也较为复杂,这是学生在学校很难接触到的。更加让我激动的是,因为作为开发者,参与开源项目贡献,这经历成为了求职路上的闪光点,在后⾯的秋招中,让我收获了不少⼤⼚offer。

因为openLooKeng社区,真正感受到技术带给我的乐趣,并且让我坚定了对于技术的追求。“未来要参与到更核⼼的⼯作!”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值