<
>

【华为人故事】一次吐槽带来意想不到的成就,认真你就赢了!

2018-07-15 11:24:12 来源:易采站长站 作者:王振洲

有位国外架构师曾经说过:“如果你的软件被用到意想不到的领域,那就是软件工程师最大的成就。”作为一个已经和软件打交道数十个年头的工程师,真正领悟这句话是在去年我带领团队打造出了华为第一个Apache开源项目——CarbonData技术的时候。

听客户吐槽得来的灵感

说起CarbonData技术,这一个让我们整个团队都成就感满满的项目的成功,还有一个小故事。当时我们当时在做网络数据分析,需要对数据库进行选型,结果发现市面上的数据库都只能满足一部分需求,满足了这个需求就不满足那个需求。我们刚开始尝试的方向就是将多个数据库拼成解决方案,其实这是在遵循前任的老路,但由于数据库的部署、数据同步等问题使方案越来越复杂,很快就无法进行下去了。

有一天,我和客户聊天,他忍不住吐槽,自己买了各种系统把网络、IT部门、财经等数据分开,可是关联分析起来特别难,为什么数据库之间不能打通呢?他这番话让我有了新的思路,因为之前我们的做法都是“拼”数据库,各个数据库有自己的语法和API,因此还是比较难用的,需要把数据不断搬移,还很难解决库与库数据之间的关联分析问题。

为什么不把所有的数据放在一个库里呢?我的灵感就这样来了!我设想可以打造一个新的库,把存有所有数据的存储部分独立于计算部分,通过添加不同的算法提供不同的功能,这样不就可以打通一整片数据了吗?这个创新的想法其实也基于当时的开源系统上向前走了一小步提出来的,和当时业界很火的Hive,Spark等大数据平台类似,我认为这个肯定是未来的方向,但当时这种平台还在初级发展阶段,他们的性能都还达不到我们的业务需要,所以我们只能在上面再做创新。

我带领着团队通过分析过去数据库解决性能问题的手段,把索引、物化视图、缓存等技术引入到大数据平台上来,并将其改造成适应存储和计算分离的架构,实现了一种“按需分层”、“批次切片”、“自描述”的数据组织和加速技术。我们称之为CarbonData技术。最终,我们达成了业务目标,也将在公司开源委员会的提议下将它推入Apache开源组织,成为华为在这个领域的第一个开源项目。

其实在云时代,客户对数据分析的需求越来越多,目前CarbonData这个开源项目仍在不断发展壮大中,也让我也深深感受到了开源的魅力。很多人即使离开了我们团队,依然还在这个开源社区继续贡献点子,而国内外有许多公司也用上了这个项目进行数据分析,他们在使用过程中发现问题还会帮我们修改。最让我觉得有趣的是,有时候别的公司使用的场景大大出乎我的意料之外,我经常暗自惊叹:“没有想到我们这个软件还可以用在这里?!”也就是这个时候,我对开头那句国外架构师的话深有感触,深深赞同。

【华为人故事】一次吐槽带来意想不到的成就,认真你就赢了!

我的秘诀:学习+练习

进入Cloud BU之前,我是一名大数据SE。还记得在提拔沟通时,主管语重心长地告诫我“不管到什么岗位上,技术不能丢,积累越多走得越远。”在专家和主管的影响下,我也认识到技术的重要性,告诉自己写代码的能力不能丢,要做到既关注客户需求、关注业务发展更要关注底层技术,我觉得这才是一个技术专家长期发展的轨道。但走上这条轨道的过程是很痛苦的。

就拿大数据来说,对于我来说是一个新领域,能想到的招数不多,我遵循的是“学习+练习”的模式。每天我都沉浸在论文的海洋里,因为那个时候有关大数据的各类文章铺天盖地,但其实都在说一些似是而非、浮于表面的东西,我觉得了解大数据业务一定要沉下去,把握最根本的东西,所以我找了许多学术论文来看,从基本知识来搞懂大数据,重点了解这个领域还有哪些新技术可以发掘。看论文这个习惯我也一直保留到现在,每周至少要看一篇。

光说不练假把式,另外一招就是实际去操练。我发现现在做软件工程师很幸福,目前开源软件非常丰富,全世界很多优秀的工程师把他们优秀的代码贡献出来,可以直接学习。得益于开源软件不仅可以直接使用,还可以在它的基础上去修改,添加新功能。通过这种在站在巨人肩膀上联系的方式,让我打开了大数据的大门。

这段时间里,我们做过不少业务,通过对网络数据的采集、处理和算法,我们给交通局做过出行规划和交通流量预测项目,还给一些地方做过人流量分析项目,利用基站数据统计人流出入量,可以查询过去和预测未来的人流车流量等。

【华为人故事】一次吐槽带来意想不到的成就,认真你就赢了!

每个认真的“脚印”都有意义

暂时禁止评论

微信扫一扫

易采站长站微信账号