開發(fā)工程師注意!2014年值得關(guān)注的9項(xiàng)技術(shù)

2014年02月12日 10:08 來源:互聯(lián)網(wǎng) 作者:秩名 我要評(píng)論(0)

  Andrew C. Oliver 是一位專業(yè)的軟件咨詢師。他從 8 歲起開始編程,從 Basic 與 dBase III+ 開始。他最為人所熟知的就是創(chuàng)建了 POI 項(xiàng)目,該項(xiàng)目現(xiàn)在托管在 Apache 上。在 Red Hat 收購(gòu) JBoss 之前,他還是 JBoss 的早期開發(fā)者之一。Andrew 是 Open Source Initiative 的前董事會(huì)成員以及現(xiàn)在的顧問。除此之外,Andrew 還是 Open Software Integrators 的董事長(zhǎng)與創(chuàng)建者,這是一家專業(yè)的服務(wù)機(jī)構(gòu),分布在達(dá)拉謨、北卡羅來納州以及芝加哥。近日,Andrew 撰寫了一篇文章,談到了 2014 年值得關(guān)注的 9 項(xiàng)技術(shù)。

  2014 年充滿了各種預(yù)測(cè),我們無法控制世界未來的樣子,不過我們可以成為自身命運(yùn)的主人。下面就是 2014 年值得關(guān)注的 9 項(xiàng)技術(shù),與你一同分享。

  1. 文檔數(shù)據(jù)庫(kù)

  很多 IT 系統(tǒng)基本上都包含了將數(shù)據(jù)結(jié)構(gòu)寫到結(jié)構(gòu)化存儲(chǔ)這一部分,同時(shí)又要求高并發(fā)的性能。文檔數(shù)據(jù)庫(kù)出現(xiàn)已經(jīng)有很多年了,其中就有 Lotus Domino 的 Notes Storage Facility,不過 NoSQL 與大數(shù)據(jù)革命又燃起了新的領(lǐng)域,其中 MongoDB 與 Couchbase 就是其中的佼佼者。

  2. 鍵值存儲(chǔ)

  有時(shí),你有一張很大的表,可以放到內(nèi)存中。如果是網(wǎng)格,那么你就可以將內(nèi)存中的表分發(fā)到多個(gè)結(jié)點(diǎn)上以加快寫的速度。如果是個(gè)讀多寫少的小表,那么你可以將其復(fù)制到所有結(jié)點(diǎn)上,這樣讀就是個(gè)內(nèi)存中的事情了。無論采用哪種方式,鍵值存儲(chǔ)都值得你好好學(xué)習(xí)一下。幾乎所有的鍵值存儲(chǔ)都可以創(chuàng)建自定義的緩存負(fù)載器或是緩存存儲(chǔ),從而實(shí)現(xiàn)對(duì) RDBMS 或是其他數(shù)據(jù)源的讀與寫。很多鍵值存儲(chǔ)采用了“稍后寫”或是隊(duì)列寫來實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的寫操作。這個(gè)領(lǐng)域的典型代表是 Couchbase、Memcached、Infinispan 與 GemFire。

  3. 圖數(shù)據(jù)庫(kù)

  從推薦引擎到社交網(wǎng)絡(luò)和地理分析,再到生物分析,圖數(shù)據(jù)庫(kù)都帶來了極大的便利性。對(duì)于傳統(tǒng)的 RDBMS 來說,朋友的朋友這種查詢是非常低效的,即便利用最新的特性也沒有太大的起色,這是因?yàn)槠浣Y(jié)構(gòu)就不對(duì)。雖然圖數(shù)據(jù)庫(kù)已經(jīng)出現(xiàn)了很多年,不過只是最近的數(shù)據(jù)爆發(fā)以及個(gè)性推薦等領(lǐng)域才使其變得更加流行。這個(gè)領(lǐng)域的典型代表是 Neo4j 與 Apache Giraph。

  4. Google Drive/Apps

  Google Apps 是個(gè)辦公效率套件。我無法想象再回到原來的通過郵件發(fā)送附件的那種方式。最近,我們通過基于 JS 的宏實(shí)現(xiàn)了越來越好的自動(dòng)化。所有的一切都存儲(chǔ)在云端,因此我們可以放心地睡覺。除此之外,可擴(kuò)展性特性意味著只要我們能夠訪問云端,那么我們就可以將文檔直接與其集成,反之亦然。

  5. On-premises 搜索

  我現(xiàn)在還是能看到有很多人在編寫著大量的 and/or/like 等 SQL 查詢,其實(shí)這么做不僅會(huì)導(dǎo)致嚴(yán)重的性能問題,還會(huì)產(chǎn)生不清晰的代碼以及不易使用的接口。這時(shí)可以看看 Google 的服務(wù),無論是數(shù)據(jù)庫(kù)、文檔還是各種文件系統(tǒng)都行。Apache Solr 值得你好好看看。

  6. PaaS

  無論是公有云還是自己的私有云,你都需要手工安裝各種操作系統(tǒng)、應(yīng)用服務(wù)器與應(yīng)用,然后提前選擇好將要部署的服務(wù)器與 VM 數(shù)量,這是十幾年前的做法。PaaS 是未來的趨勢(shì),能夠做到實(shí)時(shí)伸縮,自動(dòng)完成重復(fù)性的任務(wù)。我們所廣泛使用的平臺(tái)有 CloudFoundry、CloudBees 與 OpenShift。

  7. 云 IDE

  前不久,我們?nèi)以诖驋弑跈?,?9 歲的孩子不認(rèn)識(shí)壁櫥里面的一個(gè)很大的金屬盒子到底是什么,那是什么呢?我們?cè)诟舯诜块g看著我們的孩子?!拔也恢溃孟袷莻€(gè) Dell 的什么東西”。我們發(fā)現(xiàn)他確實(shí)不知道塔式機(jī)箱到底是什么,因?yàn)樽詮乃錾詠恚覀兙鸵恢痹谑褂弥P記本(不過他看到過一臺(tái) 1U 服務(wù)器,因?yàn)槲覀冇盟鲞^ Hadoop 的測(cè)試)。我覺得云 IDE 可以做到一點(diǎn),那就是讓下一代不知道筆記本到底是什么。為何要在硬盤上安裝 IDE 呢?為什么不打開瀏覽器,然后就開始編碼呢?比如說 Codenvy 或是 Cloud9。

  8. Hadoop

  無論是使用 MapReduce 進(jìn)行復(fù)雜的分析,抑或只是想做些日志分析和審計(jì)日志,Hadoop 都是這個(gè)行業(yè)中最為火熱的一個(gè)選擇。如果你尚未使用 Hadoop 做過一些試點(diǎn)項(xiàng)目,那么今年就要考慮做做了。如果已經(jīng)使用過 Hadoop,那么我希望你能在今年對(duì) Hadoop 有更好的了解與掌握。

  9. 集群/分布式文件系統(tǒng)

  從集群到 HDFS,可伸縮性存儲(chǔ)是關(guān)鍵。今年,你要重新思考 SAN 了。至少,如果還沒有嘗試過可以先做個(gè)試水。我預(yù)測(cè)會(huì)有很多混合方式出現(xiàn)。