大数据时代的变迁
早在1980年,未来学家阿尔文·托夫勒就在其著作《第三次浪潮》中,将大数据比作“第三次浪潮的华彩乐章”,预示着大数据时代的即将到来。自21世纪伊始,数据量呈现出每两年翻一番的迅猛增长,这使得数据的价值日益受到人们的重视。在这个大数据时代,数据架构师应运而生,他们被誉为企业数据资产的“奠基者”。
数据架构师的演变
起初,数据架构师主要在IOE领域展开工作。2009年,阿里云率先提出“去IOE”的倡议,这标志着初代数据架构师自我革新之路的开启。到了2015年,全球数据量迎来了前所未有的爆发,这一年产生的数据量甚至超过了人类过去所有历史年份的总和,标志着数据增长正式迈入了指数级时代。在这一背景下,数据架构师的角色也发生了显著变化,分化出两大主流方向:平台型数据架构师和数仓型数据架构师。本文将聚焦于数仓型数据架构师,分享其“修炼大法”,并由作者亲历视角进行深入剖析。
02
数据架构师的分类
平台型数据架构师
目前,数据架构师主要分为两大方向。一是偏平台的架构师,他们更侧重于开源技术的运用,企业通常期望他们具备深入理解开源技术源码的能力,或有过参与开源项目的经验,专注于平台的构建。这一方向又可以细分为开源派和商用软件派。开源派在互联网公司中较为受欢迎,而商用软件派,如Oracle、IBM等,则更擅长解决传统企业的数据问题。目前,开源派受到了阿里、腾讯和华为等公司的有力挑战。数仓型数据架构师
二是偏数仓的架构师,这一类对SQL能力有较高要求,企业则希望他们能熟练掌握数仓理论,并具备数仓项目的实践经验。数仓型数据架构师则专注于解决企业的数据问题,通过实时、离线等技术手段,利用ELT流程、大数据工具以及对各种数据源特点的深刻理解,来构建高效的数据仓库。他们与平台型数据架构师相互依存,后者为他们提供技术支持,前者则通过SQL能力和业务理解来满足企业的数据需求。
03
数据架构师的知识体系
技术核心与开发语言
在探讨数据架构师的不同类型与方向后,我们进一步深入理解这一角色的必备知识体系。数据架构师不仅需要掌握技术层面的知识,更需具备深厚的业务理解和洞察力。他们的知识体系如同一棵繁茂的树,根深叶茂,涵盖了从基础技术到业务知识的广泛领域。掌握一门开发语言是数据架构师的基本功。对于计算机专业的学生,我推荐学习C语言,并借助面向对象的编程思想来深入理解数据结构。数据架构中的许多核心逻辑和原理,如链表、队列、堆栈、树和图等,都源于这门课程。因此,扎实掌握数据结构对于数据架构师的进一步学习至关重要。数据库与大数据技术
掌握一种数据库是数据架构师的基本功,同时了解多种常见数据库也是必要的。推荐从Oracle数据库入手学习,安装时选择Linux系统,如CentOS,以模拟操作系统环境。安装过程中,你会接触到虚拟机技术,模拟Linux系统的运行,随后再安装数据库。选择Oracle数据库的理由在于其复杂的安装过程,这将为你提供丰富的学习机会。在安装过程中,你需要掌握Linux系统的各种命令、网络配置、补丁包管理、防火墙设置等技能。
通过实践搭建一套开源的Hadoop集群,你可以亲自动手操作HDFS、Hive、Spark、HBase等核心组件。搭建Hadoop集群的过程与安装Oracle数据库有些相似。首先,你可以利用虚拟机模拟出3-5个节点(即服务器),然后在这些服务器上进行组件的安装与配置。当然,具体的安装步骤这里就不一一展开了,但希望大家能通过实践,真正感受到大数据技术的魅力与挑战。
ELT技术与应用
在传统的大数据处理流程中,ETL(Extract-Transform-Load)技术占据了核心地位,其中“T”环节通常被置于中间位置。然而,随着大数据环境的演变,我们更倾向于将“T”环节移至其后,以实现从ETL到ELT的技术转型。这种调整背后的逻辑在于,通过将“T”环节后置,我们能够更充分地利用大数据环境下“T”环节所具备的强大能力。
另外,数据开发平台如阿里的DataWorks和Dataphin的出现,更是将数据同步、清洗转化以及任务调度等功能集成在一起,进一步推动了ELT技术的普及和应用。
构建个人知识体系
无论从事何种职业,自学能力都显得尤为重要。为了不断提升自己,我们可以尝试建立一套个性化的知识目录或索引,通过它来发现自身的不足,并有针对性地进行学习。对于数据架构师而言,他们需要掌握的知识领域广泛而深入,不仅包括硬件、网络、安全等基础技术,还要了解应用层面,并熟练掌握至少一门编程语言。同时,深入理解数据库技术、具备大数据实操经验以及精通数据仓库建模和ELT技术也是必不可少的。只有这样,数据架构师才能具备足够的深度和广度,应对复杂的业务和技术挑战。
构建个人知识体系是数据架构师在学习和工作中的一项重要任务。通过系统化、不断深化的知识积累,数据架构师能够有效应对快速变化的商业环境和技术革新,进一步推动大数据时代的创新发展。