Linux在大數(shù)據(jù)中的應(yīng)用
程序員都知道Java的方向是JavaSE,JavaEE和JavaME。 學(xué)習(xí)大數(shù)據(jù)時應(yīng)該學(xué)習(xí)哪個方向? 您只需要學(xué)習(xí)JavaSE的標(biāo)準(zhǔn)Java版本,例如Servlet,JSP,Tomcat,Struts,Spring,Hibernate和Mybatis。 這些都是JavaEE方向上的技術(shù)。 它們在大數(shù)據(jù)技術(shù)中使用不多,他們只需要了解它們即可。 當(dāng)然,您仍然需要知道Java如何連接到數(shù)據(jù)庫,例如JDBC,您必須掌握它。
有同學(xué)說Hibernate或Mybites也能連接數(shù)據(jù)庫啊,為什么不學(xué)習(xí)一下,我這里不是說學(xué)這些不好,而是說學(xué)這些可能會用你很多時間,到最后工作中也不常用,我還沒看到誰做大數(shù)據(jù)處理用到這兩個東西的,當(dāng)然你的精力很充足的話,可以學(xué)學(xué)Hibernate或Mybites的原理,不要只學(xué)API,這樣可以增加你對Java操作數(shù)據(jù)庫的理解,因為這兩個技術(shù)的核心就是Java的反射加上JDBC的各種使用。
運維學(xué)習(xí)需要分為四個階段:
①linux初級入門
②linux中級進(jìn)階
③linux高級提升
④資深方向細(xì)化。
第一階段:初級入門
Linux基礎(chǔ)知識、基本命令(起源、組成、常用命令如cp、ls、file、mkdir等常見操作命令)
Linux用戶及權(quán)限基礎(chǔ)
Linux系統(tǒng)進(jìn)程管理進(jìn)階
Linux高效文本、文件處理命令(vim、grep、sed、awk、find等命令)
第二階段:中級進(jìn)階(基礎(chǔ)運維)
中級進(jìn)階需要在充分了解linux原理和基礎(chǔ)知識之后,對上層的應(yīng)用和服務(wù)進(jìn)行深入學(xué)習(xí)。
TCP/IP網(wǎng)絡(luò)基礎(chǔ)(差不多CCNA、NP的知識就夠用)
Linux企業(yè)常用服務(wù)(如dns、http、ftp、mail、nfs等)
Linux企業(yè)級安全原理和防范技巧(系統(tǒng)性能/安全、安全威脅模型和保護(hù)方法
加密/解密原理及數(shù)據(jù)安全、系統(tǒng)服務(wù)訪問控制及服務(wù)安全基礎(chǔ)
iptables安全策略構(gòu)建
shell腳本進(jìn)階(主要是結(jié)合一些應(yīng)用,寫一些案例)
MySQL應(yīng)用原理及管理入門(能管理和搭建一個個人博客站點)
.
第三階段:高級運維
http服務(wù)代理緩存加速(其中主要學(xué)習(xí)varnish、nginx緩存系統(tǒng),要對CDN的知識有所了解。)
企業(yè)級負(fù)載集群(其中主要學(xué)習(xí)nginx、haproxy、lvs要對主要知識熟練掌握,對負(fù)載均衡算法有清晰認(rèn)識,)
企業(yè)級高可用集群 (其中需要對keepalived,heartbeat等進(jìn)行深入講解)
運維監(jiān)控zabbix詳解(主要是zabbix、cacti、nagios等監(jiān)控系統(tǒng),現(xiàn)在用的比較多的是zabbix)
運維自動化學(xué)習(xí)(需要學(xué)一些開源運維自動化工具的使用如ansible、puppet、cobbler等運維自動化工具)
第四階段:資深方向
大數(shù)據(jù)方向(需要對hadoop、storm等常見開源大數(shù)據(jù)系統(tǒng)需要深入了解)云計算方向(主要是openstack這套東西,當(dāng)然像一些kvm等虛擬化技術(shù),也是需要掌握的,現(xiàn)在docker也比較流行)
運維開發(fā)(主要是python運維開發(fā))
自動化運維(在之前自動化基礎(chǔ)上做深入)
運維架構(gòu)師(主要需要廣度,差不多5年左右以上經(jīng)驗,可以擔(dān)當(dāng)此職位)