云计算的学习路线是什么?云计算的应用场景分析
云計算的應用無處不在,學術(shù)云能為大學研究人員、教授和學生提供計算資源,讓他們以及外面的研究人員/開發(fā)人員可以更輕松、快速地接入所需資源集群,為自己的研究工作服務;而開發(fā)/測試云可使開發(fā)人員以前所未有的方便及更低的成本、更短的周期,構(gòu)建、升級和測試應用程序。
游戲云和社交媒體云在防火墻后面構(gòu)建一個云平臺,在享受靈活性和規(guī)模的同時,能夠有更大的掌控能力和安全性;在提供BYO移動服務方面,云計算也是一個非常好的架構(gòu),可以促進應用在內(nèi)部或向外部客戶的交付;另外,云計算已經(jīng)成為目前災難恢復的一個重要模式,它不僅可以建立故障備份點,還保持了“隨增長付費”的服務優(yōu)勢,這樣企業(yè)可以更快速地響應商機,同時保證高回報。
此外,云計算基礎架構(gòu)還可以幫助應對不同行業(yè)的變化。有些變化是由于行業(yè)特點而產(chǎn)生,如零售業(yè)在節(jié)假日銷售旺季會出現(xiàn)銷售的突飛猛進。當然,行業(yè)變化多種多樣,有些是周期性、可預測的, 如世界杯或奧運會,還有些是不可預測的,如重要新聞事件或博客站點。在這種情況下,需要針對預期的高峰情況構(gòu)建基礎架構(gòu)。而在平時,這些容量大部分都被閑置,云計算能夠讓這些已經(jīng)部署的基礎架構(gòu)產(chǎn)生更大的效益。
云計算大數(shù)據(jù)工程師而言,您至少要掌握以下技能:
linux基礎
因為大數(shù)據(jù)體系,基本都是開源軟件,這些開源軟件都是在開源的linux系統(tǒng)上運行的,所以你必須會基本的linux操作,比如用戶管理,權(quán)限,shell編程之類的一門JVM系語言:
當前大數(shù)據(jù)生態(tài)JVM系語言類的比重極大,某種程度上說是壟斷也不為過。這里我推薦大家學習Java或Scala,至于Clojure這樣的語言上手不易,其實并不推薦大家使用。另外,如今是“母以子貴”的年代,某個大數(shù)據(jù)框架會帶火它的編程語言的流行,比如Docker之于Go、Kafka之于Scala。
因此這里建議您至少要精通一門JVM系的語言。值得一提的,一定要弄懂這門語言的多線程模型和內(nèi)存模型,很多大數(shù)據(jù)框架的處理模式其實在語言層面和多線程處理模型是類似的,只是大數(shù)據(jù)框架把它們引申到了多機分布式這個層面。
建議:學習Java或Scala
計算處理框架:
嚴格來說,這分為離線批處理和流式處理。流式處理是未來的趨勢,建議大家一定要去學習;而離線批處理其實已經(jīng)快過時了,它的分批處理思想無法處理無窮數(shù)據(jù)集,因此其適用范圍日益縮小。事實上,Google已經(jīng)在公司內(nèi)部正式廢棄了以MapReduce為代表的離線處理。
因此如果要學習大數(shù)據(jù)工程,掌握一門實時流式處理框架是必須的。當下主流的框架包括:Apache Samza, Apache Storm, Apache Spark Streaming以及最近一年風頭正勁的Apache Flink。當然Apache Kafka也推出了它自己的流式處理框架:Kafka Streams
建議:學習Flink、Spark Streaming或Kafka Streams中的一個。
分布式存儲框架:
雖說MapReduce有些過時了,但Hadoop的另一個基石HDFS依然堅挺,并且是開源社區(qū)最受歡迎的分布式存儲,絕對您花時間去學習。
資源調(diào)度框架:
Docker可是整整火了最近一兩年。各個公司都在發(fā)力基于Docker的容器解決方案,最有名的開源容器調(diào)度框架就是K8S了,但同樣著名的還有Hadoop的YARN和Apache Mesos。后兩者不僅可以調(diào)度容器集群,還可以調(diào)度非容器集群,非常值得我們學習。
分布式協(xié)調(diào)框架:
有一些通用的功能在所有主流大數(shù)據(jù)分布式框架中都需要實現(xiàn),比如服務發(fā)現(xiàn)、領導者選舉、分布式鎖、KV存儲等。這些功能也就催生了分布式協(xié)調(diào)框架的發(fā)展。最古老也是最有名的當屬Apache Zookeeper了,新一些的包括Consul,etcd等。學習大數(shù)據(jù)工程,分布式協(xié)調(diào)框架是不能不了解的, 某種程度上還要深入了解。
列式存儲數(shù)據(jù)庫:
曾經(jīng)花了很長的時間學習Oracle,但不得不承認當下關系型數(shù)據(jù)庫已經(jīng)慢慢地淡出了人們的視野,有太多的方案可以替代rdbms了。人們針對行式存儲不適用于大數(shù)據(jù)ad-hoc查詢這種弊端開發(fā)出了列式存儲,典型的列式存儲數(shù)據(jù)庫就是開源社區(qū)的HBASE。
消息隊列:
大數(shù)據(jù)工程處理中消息隊列作為“削峰填谷”的主力系統(tǒng)是必不可少的,當前該領域內(nèi)的解決方案有很多,包括ActiveMQ,Kafka等。國內(nèi)阿里也開源了RocketMQ。這其中的翹楚當屬Apache Kafka了。Kafka的很多設計思想都特別契合分布流式數(shù)據(jù)處理的設計理念。這也難怪,Kafka的原作者Jay Kreps可是當今實時流式處理方面的頂級大神。
建議:學習Kafka,不僅僅好找工作,還能觸類旁通進一步理解基于備份日志方式的數(shù)據(jù)處理范型。
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的云计算的学习路线是什么?云计算的应用场景分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 0330 第九次课:软件包安装及卸载
- 下一篇: Flex-弹性布局