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

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

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

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

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

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

  2. 鍵值存儲

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

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

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

  4. Google Drive/Apps

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

  5. On-premises 搜索

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

  6. PaaS

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

  7. 云 IDE

  前不久,我們?nèi)以诖驋弑跈?,?9 歲的孩子不認(rèn)識壁櫥里面的一個很大的金屬盒子到底是什么,那是什么呢?我們在隔壁房間看著我們的孩子?!拔也恢?,好像是個 Dell 的什么東西”。我們發(fā)現(xiàn)他確實不知道塔式機(jī)箱到底是什么,因為自從他出生以來,我們就一直在使用著筆記本(不過他看到過一臺 1U 服務(wù)器,因為我們用它做過 Hadoop 的測試)。我覺得云 IDE 可以做到一點,那就是讓下一代不知道筆記本到底是什么。為何要在硬盤上安裝 IDE 呢?為什么不打開瀏覽器,然后就開始編碼呢?比如說 Codenvy 或是 Cloud9。

  8. Hadoop

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

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

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