|
此文章由 mendietaczfls 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 mendietaczfls 所有!转贴必须注明作者、出处和本声明,并保持内容完整
hxsh2000 发表于 2021-6-22 10:12 
能不能请你分享一下,Data Engineer的整体要求和需要用到的工具和语言。那些方面是最重要的 ...
上周公司各种行政琐事,耽误了回答问题,今天补上
现在市面上对DE的最普遍要求就是会写Python,而Python基本也是DE需要用到的最重要的语言了。
我把我的DE知识分享一下,没涵盖到的内容可以接着聊。
首先软件运行环境分三种,虚拟机,云原生和Hybrid(即两者结合)。虚拟机运行在云服务商上(AWS, Azure, GCP等)或数据中心的服务器上。如果不考虑云服务商提供的elastic scaling的服务,虚拟机的特点就是你的算力由其硬件配置决定。假设公司里所有的软件环境都是虚拟机(甚至bare-metal),你的数据仓库需要多少内存,硬盘容量,CPU这些都得有大致的规划,不然就会出现例如发现内存不够需要临时插一条新内存的窘境。(亲身经历)而云原生是上述窘境的永久解药。如果你的整个数据栈都是使用的云原生服务,比如AWS大礼包,i.e. Kinesis (streaming), S3 (Data Lake), Lamdba/Step Function (ETL and Orchestration), Redshift (Data Warehouse) 等,那你就彻底从底层的硬件折磨中解放,可以专注在数据处理的逻辑层面。
DE的工作究其根本,就是一个把数据从源头取来,通过转化,再把它放到目的地的工作,即ETL。市面上有不少例如Informatica, Qlik, Databricks等的工具,可以让你Drag and Drop轻松实现搭建ELT pipeline。大部分企业的需求,这类软件基本都能满足,不过这些公司的pricing model都是收的license fees,也让不少公司望而却步。以上说的这些产品都是proprietary technology,都是要付费的。
一个好的科技栈当然不能缺少open source software,在DE领域,open source软件也是当仁不让,例如Apache Spark, Apache Kafka, Apache Airflow, Apache Beam, Apache Nifi, Apache Flink,根据不同的使用场景,它们都能独当一面,是个中翘楚。尤其Saprk, Kafka, Airflow相信对于接触过DE的人一定不陌生。
在数据储存方面,主要三大类是数据池,业务型数据库和数据仓库。数据池就是dump,各种结构型的非结构型的,不同格式的数据都可以往里面放。话虽如此,如何index数据池,不让它真正成为垃圾堆也需要设计和巧思。业务型数据库,注重的是transaction的速度和效率,例如电商的业务后台。数据仓库,一般不注重速度,不同的使用场景需求也千差万别,但归根结底是为了以下几个原因,处理批量数据或实时流数据,以及高效的分析现有数据。数据存储是公司命脉,不管是普通的NFS(公司网盘),还是以上所诉的三种,丢失数据的风险是不堪设想的,所以数据存储方面的产品一般都价格不菲。proprietary technology,云服务自不必说,open source一般也有commercial version来分一杯羹。
说了这么多的工具,那搭建一个公司需要的数据栈,用哪些产品比较合适,收费的还是open source,如果使用收费产品,如何justify费用,而且我还没提到Data Discovery, Monitoring, Data Governance, Data lineage, Data quality,log management等等。用怎样的基本构架和框架去设计数据栈,This is when the experience kicks in. 甚至如果公司需要你去管理你team的科技栈的buget,为了省budget,有的时候不得不忍痛割爱。
以上讲的是工具和语言类,In a perfect world,如果你的Data Stakeholders能给你完整的需求,包含数据结构,速率要求,数据量等等,那这份工作自然是一个相当适合上班摸鱼的工作了。但根据我的自身经历,大部分公司的Data Stakeholders对数据以及工具的了解有限,很多时候,你需要提供适量的education,反复求证,甚至准备一个backup plan(如果发生之前商量的需求全部需要推翻的情况),而这就是DE考验耐心的部分了。
写了不少了,有哪些没提到的或者有兴趣进一步讨论的,或者需要更正的,欢迎讨论
|
评分
-
查看全部评分
|