当一个程序员逆袭从为一名架构师的时候,那考虑最多的就是如何设计现阶段公司的数据中台架构。
认知高度
什么是认知,认知是指人们获得知识或应用知识的过程,或信息加工的过程,这是人的最基本的心理过程。它包括感觉、知觉、记忆、思维、想像和语言等。人脑接受外界输入的信息,经过头脑的加工处理,转换成内在的心理活动,进而支配人的行为,这个过程就是信息加工的过程,也就是认知过程。只有不断的这样,自己的认知就会不断的提高,做架构就是这样。
一般工作3到5年,在业务开发上基本没有任何问题了,积累了大量的项目经验,技术也知道很多了,并且基本已经是团队的内部的主程或者得力助手,或者是公司的核心人员。去年年终的时候,发现很多小伙伴还是一味汇报项目相关的经验,在交谈的过程中,发现他们也是很困惑,感觉自己进步很慢,好像一直卡在哪里,又说不出来,没有大幅度的提升,遇到瓶颈。
分享一下来自互联网的这个图:
所以小伙伴遇到一个瓶颈,也就是认知需要提高,那么做架构也要不断提升架构认知高度,正如达克效应描述一样(如上图),要敢于从愚昧之巅跳到绝望之谷,通过爬升开悟之坡,从而达到架构认知的巅峰时刻。
架构认知的三个层次:行业视野、技术视野、工作视野。架构师能力的上线是什么?是对业务本质的理解,因此,行业视野(包含公司)这是第一步。但与技术还有较大落地上的差据,技术要把业务需求转化成系统、这要具备技术视野。最后,具体到你、如何落地?这是一个执行的问题。
做架构不能只顾技术,看到别的公司有什么技术,我们就上什么技术。架构是根据我们收集公司业务现状信息,比如业务复杂度,大数据架构要有数据量大小及规模,时间问题,当前团队的人员问题等等。面对业务场景给出优雅的解决方案,使得业务能够快速迭代和持续交付,从而达到降本增效的目标。综合评估,折中做出适合公司的当前的架构,不能满足于现状,也不能过度的超前设计。
公司大数据架构演进
一般根据公司的发展规模等,大数据架构也会不同,如下图:
公司发展初创期,人员少,数据量也少,大数据一般就会没有,业务人员自己在事务性数据库里面统计指标,或者用简单的shell脚本搞定。公司发展到中期,属于高速发展期,这个时候,需要建立自己的大数据仓库,数据集市,可视化分析平台等,同时会建立大数据平台等。等到公司发展稳定期,具有全域的大数据仓库,大数据分为PAAS层,DAAS层,DA层等大数据中台架构,这个时候业务方也特别多,市场运营,老板等各个部门人员非常多,就需要考虑各个部门是不是就建立自己单独的数据集市,自己用自己的,大数据小伙伴配合业务一块建立,但是规范按照大数据平台设定的规范。
大数据架构实战