介紹
大數據領域相當廣闊,對於任何開始學習大數據及其相關技術的人來說,這都是一項非常艱鉅的任務。大數據技術數不勝數,決定從哪裡開始可能是迷茫的。
這就是我想寫這篇文章的原因。本文為您提供了一條引導您開始學習大數據之旅的途徑,並將幫助您在大數據行業找到一份工作。我們面臨的最大挑戰是根據我們的興趣和技能確定正確的角色。
為了解決這個問題,我對每個大數據角色都做了詳細的解釋,並考慮了工程師和計算機科學畢業生的不同工作角色。
我已經嘗試回答您在學習大數據時已經或將要遇到的所有問題。為了幫助您根據自己的興趣選擇路徑,我添加了一個目錄,它將幫助您確定正確的路徑。
目錄
- 如何開始
- 在大數據行業,什麼角色是可以爭取的
- 你的個人資料是什麼?你適合什麼職位
- 將角色映射到大數據概要
- 如何成為一名大數據工程師
- 什麼是大數據術語
- 您需要了解系統和體系結構
- 學習設計解決方案和技術
6. 大數據學習路徑
7. 資源
1.如何開始
當人們想要開始研究大數據時,首先問我的問題是,我是學習Hadoop、分佈式計算、Kafka、NoSQL還是Spark?
我總是有一個答案:這取決於你真正想做什麼。
所以,讓我們用一種系統的方法來解決這個問題。我們將一步一步地學習這個過程。
2.在大數據行業,什麼角色是可以爭取的
大數據行業有很多角色。但大體上可以分為兩類
- 大數據工程
- 大數據分析
這些領域相互依存,但各不相同。
大數據工程圍繞著大量數據的設計、部署、獲取和維護(存儲)。大數據工程師需要設計和部署的系統,使相關數據可用於各種面向消費者和內部應用。
而大數據分析的核心概念是利用大數據工程師設計的系統中的大量數據。大數據分析包括分析趨勢、模式以及開發各種分類、預測和預測系統。
因此,簡而言之,大數據分析涉及到對數據的高級計算。而大數據工程涉及到系統和設置的設計和部署,在此基礎上必須進行計算。
3.你的個人資料是什麼?你適合什麼職位
現在,我們知道了行業中可用的角色類別,讓我們嘗試確定哪種適合您。這樣,你就可以分析你在這個行業的位置。
總的來說,根據你的教育背景和行業經驗,我們可以對每個人進行如下分類
- 教育程度(這包括興趣,但不一定指你的大學教育)。
1.計算機科學
2.運算
- 工作經歷
1.菜鳥
2.數據科學家
3.計算機工程師(數據相關項目工作)
因此,通過使用上述類別可以如下定義您的個人資料:
例子1:“我是計算機科學專業的畢業生,沒有經驗,但數學能力相當紮實。”
你對計算機科學或數學有興趣,但如果沒有以前的經驗,你會被認為是菜鳥。
例子2:“我是計算機科學專業的畢業生,從事數據庫開發工作。”
你對計算機科學感興趣,適合擔任計算機工程師(數據相關項目)。
例子3: “我是一名數據科學家。”
你對數學感興趣,適合做一個數據科學家。
所以,繼續定義你的概要文件。
(我們在這裡定義的概要文件對於尋找您在大數據行業的學習路徑至關重要)。
4.將角色映射到大數據概要
既然您已經定義了您的概要文件,讓我們繼續映射您應該瞄準的概要文件。
4.1 大數據工程角色
如果你有良好的編程技能,瞭解計算機如何在互聯網上交互(基礎),但你對數學和統計學沒有興趣。在這種情況下,您應該選擇大數據工程角色。
4.2 大數據分析的角色
如果你擅長編程,並且你的教育背景和興趣在於數學和統計學,那麼你應該選擇大數據分析職位。
5.如何成為一名大數據工程師
首先,讓我們來定義一個大數據工程師需要知道什麼,以及如何在行業中獲得一個職位。第一步也是最重要的一步是首先確定你的需求。你不能在沒有明確需求的情況下就開始研究大數據。否則,你就只能在黑暗中摸索。
為了定義你的需求,你必須瞭解常見的大數據術語。讓我們來看看大數據到底意味著什麼?
5.1 大數據術語
大數據項目主要有數據需求和處理需求兩個方面。
5.1.1 數據需求術語
結構:如你所知,數據既可以存儲在表中,也可以存儲在文件中。如果數據存儲在預定義的數據模型中(即有一個模式),它被稱為結構化數據。如果它存儲在文件中,並且沒有預定義的模型,則稱為非結構化數據。(類型:結構化/非結構化)。
大小:隨著大小,我們評估的數據量。 (類型:S / M / L / XL / XXL /流)
接收吞吐量:定義數據可以以什麼速率被系統接受。(類型:H / M / L)
源吞吐量:定義數據更新和轉換到系統的速率。(類型:H / M / L)
5.1.2 處理需求術語
查詢時間:系統執行查詢所需的時間。(類型:長/中/短)
處理時間:處理數據所需的時間(類型:長/中/短)
精度:數據處理的精度(類型:精確/近似)
5.2 您需要了解的系統和體系結構
場景1:通過從客戶數據、領先數據、呼叫中心數據、銷售數據、產品數據、weblog等多個數據源創建一個數據湖,設計一個分析公司銷售業績的系統。
5.3 學習設計解決方案和技術
場景1的解決方案:銷售數據的數據湖
(這是我個人的解決方案)
那麼,數據工程師如何著手解決這個問題呢?
要記住的一點是,一個大數據系統不僅要設計無縫集成來自不同數據源的數據,使其可用,但它也必須設計一個方法,使數據的分析和利用數據開發應用程序簡單,快速,總是可用的。
定義最終目標:
- 通過集成來自多個源的數據創建一個數據湖。
- 定期(在本例中可能是每週)自動更新數據。
- 分析的數據可用性(全天候,甚至每天)。
- 易於訪問和無縫部署分析儀表板的體系結構。
現在我們知道了我們的最終目標是什麼,讓我們嘗試用更正式的術語來表述我們的需求。
5.3.1 數據相關要求
結構:大多數數據都是結構化的,並且有一個定義好的數據模型。但是像網絡日誌、客戶互動/呼叫中心數據、銷售目錄中的圖像數據、產品廣告數據這樣的數據源。圖像和多媒體廣告數據的可用性和要求可能因公司而異。
結論:包括結構化數據和非結構化數據
大小:L或XL(選擇Hadoop)
接收吞吐量:高
質量:中等(Hadoop & Kafka)
完整性:不完整
5.3.2 處理相關要求
查詢時間:中到長
處理時間:中到短
精度:精確
由於集成了多個數據源,因此必須注意,不同的數據將以不同的速率進入系統。例如,weblog將以高粒度的連續流提供。
基於以上對我們系統需求的分析,我們可以推薦以下大數據設置。
6.大數據學習路徑
現在,您已經瞭解了大數據行業,以及大數據從業者的不同角色和需求。讓我們來看看要成為一名大數據工程師,你應該走什麼樣的道路。
眾所周知,大數據領域充斥著各種技術。因此,學習與您的大數據工作角色相關並保持一致的技術是非常重要的。這與任何傳統領域(如數據科學和機器學習)有所不同,在這些領域中,你從某件事開始,然後努力完成該領域的所有工作。
下面你會發現一棵樹,為了找到你自己的路,你應該穿過它。儘管樹中的一些技術被指出是數據科學家的強項,但是如果您開始一條路徑,最好了解所有的技術直到葉子節點。該樹源自lambda體系結構範式。
藉助這個樹形圖,您可以根據自己的興趣和目標選擇路徑。然後你就可以開始學習大數據的旅程了。
任何想要部署應用程序的工程師都必須知道的一個基本概念是Bash腳本。您必須非常熟悉linux和bash腳本。這是處理大數據的基本要求。
在核心,大多數大數據技術都是用Java或Scala編寫的。但是不要擔心,如果你不想用這些語言編碼,你可以選擇Python或者R,因為現在大多數大數據技術都廣泛支持Python和R。
因此,您可以從上面提到的任何一種語言開始。我建議選擇Python或Java。
接下來,您需要熟悉雲計算。這是因為如果你沒有處理過雲上的大數據,那麼後面的路會很難。嘗試在AWS、softlayer或任何其他雲提供商上使用小型數據集進行實踐。它們中的大多數都有一個免費的層,這樣學生就可以練習了。如果你願意,你可以暫時跳過這一步,但是在你參加任何面試之前,一定要在雲端工作。
接下來,您需要了解分佈式文件系統。最流行的DFS是Hadoop分佈式文件系統。在這個階段,您還可以研究一些與您的域相關的NoSQL數據庫。
到目前為止,這條道路是每個大數據工程師都必須知道的強制性基礎。
現在是您決定是使用數據流還是休眠的大量數據的時候了。這是用來定義大數據的四個V中兩個V的選擇(體積、速度、多樣性和準確性)。
假設您決定使用數據流來開發實時或接近實時的分析系統。那麼你應該走Kafka之路。否則選擇Mapreduce路徑。這樣你就沿著你創造的道路前進。請注意,在Mapreduce路徑中不需要學習pig和hive。只學習其中之一就足夠了。
總結:遍歷樹的方法。
- 從根節點開始,執行深度優先遍歷樣式。
- 在每個節點停止,檢查鏈接中給出的資源。
- 如果您有足夠的知識,並且對使用該技術有相當的信心,那麼就轉移到下一個節點。
- 在每個節點上嘗試完成至少3個編程問題。
- 移動到下一個節點。
- 到達葉子節點。
- 從備選路徑開始。
最後一步(#7)讓你產生疑惑了嗎!說實話,沒有一個應用程序只有流處理或低速延遲數據處理。因此,在技術上,您需要精通執行完整的lambda體系結構。
此外,請注意,這不是你可以學習大數據技術的唯一途徑。當然,你可以創建自己的路徑。 但是,這是可以適用於大多數人的路徑。
如果你想進入大數據分析領域,你可以走同樣的道路,但不要試圖完善一切。
對於一個能夠處理大數據的數據科學家,您需要在下面的樹中添加幾個機器學習管道,並將注意力集中在機器學習管道上,而不是下面提供的樹。但是我們可以稍後討論ML管道。
根據您在上述樹中使用的數據類型,添加一個所選的NoSQL數據庫。
如您所見,有許多NoSQL數據庫可供選擇。因此,它總是取決於您將使用的數據類型。
為您需要考慮的NoSQL數據庫類型提供明確的答案,例如延遲、可用性、彈性、準確性,當然還有您正在處理的數據類型。
END
我希望您喜歡這篇文章。在這條學習道路的幫助下,您將能夠踏上大數據行業之旅。我已經講述了你找工作所需的大部分知識。
最後說一下,想要學習大數據的限時領取免費資料及課程
領取方法:
還是那個萬年不變的老規矩
1.評論文章,沒字數限制,一個字都行!
3.私信小編:“大數據開發教程”即可!
謝謝大家,祝大家學習愉快!(拿到教程後一定要好好學習,多練習哦!)
閱讀更多 微笑數據工程師 的文章