数据库承载了客户最关键的数据,它需要有非常好的可用性,可靠性,所以也非常考验一个内核团队的开发的能力,产品化的能力,以及工程落地的能力。
而每个数据库领域的开发人员,或许都经历过数据库内核的颠覆性推倒重来;重写整个数据库的存储和事务引擎……
在《云享人物·大咖面对面》第五期在的采访中,华为数据库领域科学家、华为云数据库GaussDB首席架构师冯柯分享了他对产业和技术的思考。同时,历数这些年遇到的技术挑战上,他也总结了一套自己的方法论。
如何克服技术难题?
首先是尽可能掌握问题的全景。 了解别人是如何解决类似问题,他们的成功和失败故事,站在前人的肩膀上,理清自己对技术产品的认知,不断地复盘和反思。即使是同一个人面对同一个问题,处在不同的人生阶段,解决问题的方式和做法也是大相径庭。
其次是了解细节。 无论个人资历的深浅,无论听上去多么酷炫的想法,当你要接触一个全新的数据库引擎,仍然需要深入到代码中,将自己沉到细节中,你的想法才能最终落地。
最后是学会取舍。 在着手架构设计的时候,明明知道哪些是好的和不好的,但仍要清醒地面对N种可能,并做出合适的平衡取舍。
站在35岁的十字路口,大龄码农何去何从?
在技术一线坚持20多年后,对于冯柯来说,自己的人生已经和数据库“融为一体”了,他也以自身为例,分享了 “大龄技术码农”的转型经验。
根据业务类型,数据库通常可以分为三种。
以业内热议的程序员“35岁中年危机”为界限,冯柯表示,在35岁以前,技术开发者通常是做OLTP的事情, 提升代码能力和效率,工作又快又好。当到35岁以后,可能个人代码能力不会再增加,事务处理能力也到达了峰值,此时就要去考虑转型。
比如从OLTP到OLAP,成为一个技术管理者,将自身过去的技术经验积累内化沉淀为团队的经验,帮助整个团队去决策、少走弯路。
或者从OLTP到HTAP,继续工作在一线,继续编码,同时具备一定的分析能力,从过去失败的经验中不断总结,让事务处理能力慢下来的同时,提高思考的完整性。
所以,面对所谓的35岁危机,冯柯强调最重要的是要有积累和分析沉淀,“如果没有积累,35岁可能就真的成为了危机”。当然,“虽然经验是财富,但也可能成为你的瓶颈、你的围城,尤其是对技术管理者来说,一定要终身学习,避免个人的经验成为团队发展的天花板。”