如何成為大數(shù)據(jù)工程師,大數(shù)據(jù)是未來的職業(yè)
大數(shù)據(jù)是未來的職業(yè)。我還要說更多:開發(fā)人員的數(shù)據(jù)工程技能是迫切需要的。在2003年之前,我們每兩天創(chuàng)建的數(shù)據(jù)量達到今天的PB級。Gartner分析師將云服務(wù)和網(wǎng)絡(luò)安全列為2021年的主要技術(shù)趨勢之一。
這種趨勢很容易解釋。需要安全地存儲和處理大量的大數(shù)據(jù)數(shù)組,以獲得有用的信息。當(dāng)公司轉(zhuǎn)移到遠程工作時,這些需求變得更加明顯。電子商務(wù),醫(yī)療保健,教育科技-所有這些行業(yè)都想了解有關(guān)其在線消費者的所有信息。盡管數(shù)據(jù)僅存儲在服務(wù)器上,但完全沒有意義。
我有數(shù)據(jù)嗎?
干凈,結(jié)構(gòu),融合-這些是數(shù)據(jù)工程的基本操作。專業(yè)人士應(yīng)該知道如何合并從多個來源收集的不同格式的數(shù)據(jù)。我從事Python編程已經(jīng)三年了,其中我已經(jīng)沉浸在大數(shù)據(jù)領(lǐng)域兩年了。從個人經(jīng)驗中,我意識到,對于日常工作,您需要能夠做更多的事情。
基本上,數(shù)據(jù)工程師是四個角色的組合:
軟件工程師。 編寫代碼,測試并對其進行優(yōu)化。在我看來,數(shù)據(jù)工程最簡單的途徑就是軟件工程。該專家知道如何安排計算機和程序。他/她熟悉高質(zhì)量軟件的開發(fā)和數(shù)據(jù)庫的工作。
大數(shù)據(jù)開發(fā)人員。了解數(shù)據(jù)處理的原理,使用各種工具對其進行轉(zhuǎn)換。他根據(jù)客戶的請求或業(yè)務(wù)流程準(zhǔn)備數(shù)據(jù)模型的描述。
數(shù)據(jù)庫管理員。建立存儲體系結(jié)構(gòu)放在他的肩膀上。知道如何以最佳方式存儲數(shù)據(jù)并對其執(zhí)行基本操作。
云工程師。 如今的數(shù)據(jù)量如此之大,以至于將其存儲在服務(wù)器上太昂貴或根本不可能-它根本不適合那里。云解決方案為您服務(wù)。這位工程師了解什么是云解決方案,它們的結(jié)構(gòu)和特定功能是什么,它們?nèi)绾伪舜私换ヒ约叭绾卧O(shè)置云服務(wù)。
從任何這些位置,您都可以切換到數(shù)據(jù)工程。
數(shù)據(jù)工程師,數(shù)據(jù)科學(xué)家或數(shù)據(jù)分析師:誰是最酷的?
這三位專家是由數(shù)據(jù)驅(qū)動的。每個人都有自己的責(zé)任。例如,數(shù)據(jù)工程師收到同事的請求以查找相關(guān)數(shù)據(jù),以發(fā)現(xiàn)新功能的有效性。工程師從不同的來源(服務(wù)器,應(yīng)用程序或云)中提取特定的數(shù)據(jù),對其進行簡化,處理并將其加載到正確的存儲中。從那里,Data Analyst接受它-分析信息并將其轉(zhuǎn)換為客戶可以理解的格式。這可以是報告,信息圖,演示文稿。專家會看到找到的指標(biāo)之間的聯(lián)系,并進行比較。當(dāng)您需要預(yù)測患者狀況或市場動態(tài)時,需要數(shù)據(jù)科學(xué)家。讓我們以一個示例說明所有角色如何在項目中進行協(xié)作。
想象一下一個定期的社交網(wǎng)絡(luò)來學(xué)習(xí)外語。人們會發(fā)現(xiàn)筆友并練習(xí)英語,德語,中文等。數(shù)以百萬計的日常用戶會留下數(shù)字痕跡:他們通過個人郵件登錄,購買高級帳戶,下載應(yīng)用程序并通過視頻撥打電話。每次點擊都會被注冊并發(fā)送到服務(wù)器。該公司希望跟蹤該平臺的有效性和盈利能力。數(shù)據(jù)工程師如何提供幫助?就個人而言,他不能。但是與數(shù)據(jù)科學(xué)家和數(shù)據(jù)分析師等同事一起,他發(fā)現(xiàn)的數(shù)據(jù)變成了有用的信息-統(tǒng)計信息,圖表和預(yù)測。
這并不是說其中一些更有用,做更多的工作或更好地應(yīng)對責(zé)任。他們的任務(wù)范圍實際上可能有所不同,并取決于客戶端設(shè)置的任務(wù)。唯一的是,數(shù)據(jù)工程師似乎正在“影子”中工作。如果您善于交際,并且知道如何與客戶溝通,則值得研究分析師或數(shù)據(jù)科學(xué)家的專業(yè)。當(dāng)然,這取決于您。
無論如何,沒有工程師,團隊將很難處理原始數(shù)據(jù)。他們與他一起從存儲中獲取干凈,優(yōu)化的數(shù)據(jù)。他們要做的就是計算統(tǒng)計數(shù)據(jù),發(fā)現(xiàn)趨勢并預(yù)測結(jié)果。三人一組在一起工作比單獨完成所有工作要有效得多。
處理數(shù)據(jù):數(shù)據(jù)工程師做什么?
有不同的數(shù)據(jù)源。工程師的任務(wù)是從中獲取信息,統(tǒng)一來自不同來源的數(shù)據(jù),進行處理,并根據(jù)要求進行簡化和多樣化。我們將以結(jié)構(gòu)化查詢語言編寫的查詢發(fā)送到數(shù)據(jù)庫。SQL是使用最廣泛的數(shù)據(jù)操作語言。因此,許多工具使用已經(jīng)熟悉的語法。例如,Apache Hive或Impala。
要更改數(shù)據(jù),您需要特殊的框架。Apache Spark,Apache Flink和Hadoop MapReduce允許您執(zhí)行以下類型的轉(zhuǎn)換:
- 數(shù)據(jù)清理
- 刪除重復(fù)項
- 轉(zhuǎn)換數(shù)據(jù)類型(字符串到數(shù)字或日期)
- 過濾
- 數(shù)據(jù)聯(lián)接
- 數(shù)據(jù)推導(dǎo)
一些框架僅適用于處理流數(shù)據(jù)。其他僅用于已長時間存儲在服務(wù)上的數(shù)據(jù)。有些可以同時做。假設(shè)我們需要刪除不必要的記錄并填寫缺少的值。這通常是通過準(zhǔn)備好的腳本來完成的。并非所有的框架都有能力以工程師想要的語言編寫腳本。
通常,Python,Java和Scala編程語言用于轉(zhuǎn)換數(shù)據(jù)。Hadoop,HDFS,Apache Cassandra,HBase和Apache Hive是用Java構(gòu)建的。在Scala,Apache Kafka和Apache Spark上。在Python中,Pandas / NumPy。Dask +包裝器適用于用其他語言(PyFlink,PySpark,Python Hadoop API)編寫的框架。
要構(gòu)建所有內(nèi)容,有兩種方法:ETL和ELT。如果我們處理的數(shù)據(jù)量很小或使用來自不同客戶端的現(xiàn)成數(shù)據(jù)的數(shù)據(jù)庫,則使用ETL更為方便。如果有很多混合信息,ELT會做得更好。在這種情況下,我們首先將數(shù)據(jù)加載到存儲中,在單獨的服務(wù)器上進行轉(zhuǎn)換,然后在必要時將其拉出。
最終數(shù)據(jù)進入數(shù)據(jù)倉庫或數(shù)據(jù)庫。我們通過包含在外部服務(wù)API中的SQL請求或自定義腳本來設(shè)置投放。接下來是數(shù)據(jù)分析師和數(shù)據(jù)科學(xué)家。它們基于數(shù)據(jù)形成有用的信息。第一個創(chuàng)建報告,圖形并在數(shù)據(jù)中找到模式,第二個使用機器學(xué)習(xí)方法進行預(yù)測。
數(shù)據(jù)工程技能:有什么用?
您肯定有工作要做。數(shù)據(jù)量只會增加。您將需要清潔它們,對其進行整理,分析。了解數(shù)據(jù)工程的基礎(chǔ)知識至少對以下目的有用。
查找和整理數(shù)據(jù)
有關(guān)用戶配置文件,購買,應(yīng)用程序在不同設(shè)備上的點擊次數(shù)的信息,所有這些信息均由工程師收集并按內(nèi)容分組。如果一家公司正在為明年制定計劃,并且想知道業(yè)務(wù)的預(yù)期增長,那么數(shù)據(jù)科學(xué)家和分析師將加入工程師團隊。根據(jù)工程師收集的信息,他們找出了哪些利基市場以及銷售下降的原因,最受歡迎的產(chǎn)品或功能。
提高數(shù)據(jù)傳輸速度
提高 向目標(biāo)系統(tǒng)或目標(biāo)用戶的數(shù)據(jù)傳遞速度。速度取決于框架,方法和服務(wù)的選擇。例如,Hadoop MapReduce比Spark更具成本效益,但處理速度較慢。如果我們有流數(shù)據(jù),則可以即時處理它,而不是將其保存到磁盤并稍后進行處理,將更加方便快捷。
降低倉儲成本
在80年代,1 GB的HDD空間價格為500,000美元,而現(xiàn)在僅為0.025美元。從那時起,數(shù)據(jù)量增長了數(shù)百倍,硬盤驅(qū)動器無法處理它們。將信息存儲在云上更加方便和安全。太字節(jié)級的服務(wù)每月將花費數(shù)十至數(shù)百美元。專家可以為客戶選擇最有利可圖的服務(wù)和資費計劃。
大數(shù)據(jù)是二十一世紀(jì)的“燃料”
如果我們拋棄所有數(shù)據(jù),人類的發(fā)展將接近18世紀(jì)的水平。就像我們的祖先一樣,我們?nèi)匀豢久姘褂霉埠蛡€人交通工具,醫(yī)治人們。使用大數(shù)據(jù)可以讓您賣出更多面包,優(yōu)化出行,并加快科學(xué)發(fā)現(xiàn)和其他發(fā)現(xiàn)。
無論您是一家歷史悠久的大公司,還是一家繁榮但規(guī)模小的創(chuàng)業(yè)公司,它對每個人處理數(shù)據(jù)都是有用的。對于普通用戶,這沒有任何意義,但是對于企業(yè)而言,這非常重要。例如,當(dāng)銷售下降時,從存儲中提取必要的信息并找出原因就足夠了。借助數(shù)據(jù)及其處理能力,我們可以獲得新的知識。任何行業(yè)都只能從中受益。























