天天看點

大資料領域三個大的技術方向

大資料領域三個大的技術方向:

1、Hadoop大資料開發方向

2、資料挖掘、資料分析&機器學習方向

3、大資料運維&雲計算方向

大資料學習什麼

大資料領域三個大的技術方向

很多初學者,對大資料的概念都是模糊不清的,大資料是什麼,能做什麼,學的時候,該按照什麼線路去學習,學完往哪方面發展,想深入了解,想學習的同學歡迎加入大資料學習qq群:199427210,有大量幹貨(零基礎以及進階的經典實戰)分享給大家,并且有清華大學畢業的資深大資料講師給大家免費授課,給大家分享目前國内最完整的大資料高端實戰實用學習流程體系

Python:Python 的排名從去年開始就借助人工智能持續上升,現在它已經成為了語言排行第一名。

文法簡捷而清晰,對底層做了很好的封裝,是一種很容易上手的進階語言。

大資料和資料科學領域,任何叢集架構軟體都支援Python,Python也有很豐富的資料科學庫,是以Python不得不學。

Linux:更好的了解hadoop、hive、hbase、spark等大資料軟體的運作環境和網絡環境配置,學會shell就能看懂腳本這樣能更容易了解和配置大資料叢集。

Hadoop:Hadoop裡面包括幾個元件HDFS、MapReduce和YARN,HDFS是存儲資料的地方就像我們電腦的硬碟一樣檔案都存儲在這個上面,MapReduce是對資料進行處理計算的,YARN是展現Hadoop平台概念的重要元件有了它大資料生态體系的其它軟體就能在hadoop上運作了,這樣就能更好的利用HDFS大存儲的優勢和節省更多的資源比如我們就不用再單獨建一個spark的叢集了,讓它直接跑在現有的hadoop yarn上面就可以了。

Zookeeper:ZooKeeper是一種為分布式應用所設計的高可用、高性能且一緻的開源協調服務,它提供了一項基本服務:分布式鎖服務。由于ZooKeeper的開源特性,後來我們的開發者在分布式鎖的基礎上,摸索了出了其他的使用方法:配置維護、組服務、分布式消息隊列、分布式通知/協調等。

Sqoop:這個是用于把Mysql裡的資料導入到Hadoop裡的。當然你也可以不用這個,直接把Mysql資料表導出成檔案再放到HDFS上也是一樣的,當然生産環境中使用要注意Mysql的壓力。

Hive:對于會SQL文法的來說就是神器,它能讓你處理大資料變的很簡單,不會再費勁的編寫MapReduce程式。

Hbase:這是Hadoop生态體系中的NOSQL資料庫,他的資料是按照key和value的形式存儲的并且key是唯一的,是以它能用來做資料的排重,它與MYSQL相比能存儲的資料量大很多。是以他常被用于大資料處理完成之後的存儲目的地。

Kafka:Kafka的整體架構非常簡單,是顯式分布式架構,producer、broker(kafka)和consumer都可以有多個。Producer,consumer實作Kafka注冊的接口,資料從producer發送到broker,broker承擔一個中間緩存和分發的作用。broker分發注冊到系統中的consumer。broker的作用類似于緩存,即活躍的資料和離線處理系統之間的緩存。用戶端和伺服器端的通信,是基于簡單,高性能,且與程式設計語言無關的TCP協定。幾個基本概念。

Spark:它是用來彌補基于MapReduce處理資料速度上的缺點,它的特點是把資料裝載到記憶體中計算而不是去讀慢的要死進化還特别慢的硬碟。特别适合做疊代運算,是以算法流們特别稀飯它。它是用scala編寫的。Java語言或者Scala都可以操作它,因為它們都是用JVM的。

機器學習(Machine Learning, ML):是一門多領域交叉學科,涉及機率論、統計學、逼近論、凸分析、算法複雜度理論等多門學科。它是人工智能的核心,是使計算機具有智能的根本途徑,其應用遍及人工智能的各個領域,它主要使用歸納、綜合而不是演繹。機器學習的算法基本比較固定了,學習起來相對容易。

深度學習(Deep Learning, DL):深度學習的概念源于人工神經網絡的研究,最近幾年發展迅猛。深度學習應用的執行個體有AlphaGo、人臉識别、圖像檢測等。是國内外稀缺人才,但是深度學習相對比較難,算法更新也比較快,需要跟随有經驗的老師學習。