今年是大數據技術Hadoop問世10周年,十年前Hadoop之父Doug Cutting可能料想不到,當年他以小孩的大象玩偶來命名的Hadoop,不僅開啟了大數據時代,更成為孕育大數據技術的搖籃。如今Hadoop生態圈發展出許多企業隨手可得的大數據開源技術,同時也促使Spark、SMACK等新興大數據技術的蓬勃發展。面對Hadoop十年的新局面,iThome專訪Doug Cutting,談及Hadoop與Spark的關係、Hadoop的安全性,以及開源軟體商業模式等議題,訪談內容整理如下。

iThome問:在大數據領域,最近熱門的話題似乎都圍繞著即時分析平臺Spark,甚至有人認為Spark取代了Hadoop,你如何看待Spark與Hadoop的競爭?

Doug Cutting答:Spark確實可以取代Hadoop的部分功能,但我不認為Spark可以完全取代Hadoop。Spark在許多應用情境上的表現確實比MapReduce好,但是Spark缺乏Hadoop所提供的HDFS(Hadoop Distributed File System)、YARN(Yet Another Resource Negotiator),以及排程等功能。事實上Hadoop與Spark並非競爭對手,它們是相輔相成的互補關係。

在批次運算(Batch Processing)與串流運算(Stream Processing)的表現上,Spark的確比MapReduce優秀,但是在SQL互動查詢方面Spark則不如Impela,而在搜尋的表現上亦不如Solr。就我的觀點而言,Spark確實是一個很好的元件,它比Hadoop生態系中一些既存的元件來得好,但它並非完全取代Hadoop,而是讓整個Hadoop生態系更加完美。

現在我們會鼓勵大家趁著打造新的應用時,以Spark做為批次與串流的運算引擎,當然我們仍舊繼續支援MapReduce,然而不可否認Spark代表下一代的技術。

其實Cloudera是第一個宣布支援Spark的大數據公司,我們的客戶採用Spark的比例比起其他公司來得多,所以我們在Spark領域也算是領導廠商之一。過去大家以為Cloudera是Hadoop公司,但現在Cloudera其實是Hadoop與Spark的公司,如同我之前所說的,我們公司的存在是支援對客戶而言最好的大數據技術,所以我們當然會鼓勵客戶採用Spark,因為它確實是一個更好的工具。

Hadoop的安全性是企業採納大數據平臺的顧慮之一,尤其對於金融業而言,Hadoop的安全性更是關鍵,Hadoop在安全上有哪些強化?

十年前我們剛創造Hadoop時,確實缺乏安全機制,任何人只要能接觸到Hadoop系統,都可以任意讀取或寫入資料。但後來我們不斷強化安全,投入諸多安全功能研發,已經陸續為Hadoop增加許多安全機制。

強化資料安全要從幾個層面著手。首先是存取控制,我們已經為Hadoop開發了存取控制清單(Access Control List)的功能,可以提供使用者安全認證,確保登入與資料存取的安全性。

在存取控制方面,一開始我們雖然只提供檔案層級的保護,但在我們持續強化Hadoop安全功能之下,Hadoop的保護機制一直持續精進,從允許特定人員讀取特定的欄位、資料表,到現在我們更進一步開發出能夠針對列(Raw)或資料格(Cell)的存取控制功能,如此就可以保護特定的資料,甚至是特定範圍裏的資料。在這樣持續開發的流程之下,Hadoop的安全保護層級會越來越精細,讓使用者擁有越來越多的管控機制。

資料安全防護的另一個重要機制是資料加密,Cloudera在這方面也已經與英特爾共同研發,在資料的儲存、刪除,甚至是資料透過網路傳輸的過程,都可以採取加密保護,現在Clouder提供的產品都已經有這方面的安全保護機制。

其實,大多數新技術問世時都缺乏安全設計,當Cloudera決定採納一項新技術之後,第一年的首要任務就是強化安全功能。例如在兩年前開始流行的Spark,一開始也是缺乏安全保護,不過這兩年我們不斷努力補強Spark架構各個層面的安全,現在幾乎已經快要完成Spark整個架構的安全機制。

強化安全其實是一個很辛苦的過程,但面對每個新技術我們都必須如此。最近,我們在世界各地已經有不少金融業者開始採用Hadoop,他們甚至還通過了法規驗證。以信用卡業為例,在支付產業有一個重要的安全規範—PCI DSS(Payment Card Industry Data Security Standard),目前Cloudera的Hadoop平臺已經通過MasterCard的PCI標準驗證,而MasterCard也正在推動金融業採用經PCI認證的Hadoop平臺。

所以你認為銀行可以放心採用Hadoop。

沒錯,今天你絕對可以用Hadoop打造非常安全的系統。

我最在意的是技術必須持續進步,讓人們可以擁有最好的技術,只要是人們認為最好的技術,我們就會支援。而有了開源軟體,讓我們可以做到這一點。

- Doug Cutting, Hadoop創辦人 暨 Cloudera架構長

如SMACK這類的新興大數據技術框架,近年來在矽谷的網路公司大受歡迎。SMACK架構是由Spark、Mesos、Akka、Cassandra及Kafka所組成,其中完全沒有Hadoop,你如何看待這類技術的發展?

我認為這是很好的現象,任何人都可以組合一些技術而成為一套技術框架,可見這些開源技術的獨立性,而這也代表著我們真的擁有更為進化的技術開發模式,因為任何人都可以更換不同的組件,嘗試各種組合,找到最合適、最成功的模式。

這也是開源技術不會被特定廠商綁死的最佳保證,同時顯示開源軟體的優勢,如果整個生態系的每個技術都有極佳的可替換性,那麼使用者就可以擁有最好的架構。

以Hadoop來說,Hadoop的核心主要就是三個部分:HDFS、MapReduce及YARN,HDFS提供資料儲存、MapReduce提供批次運算、YARN負責排程。雖然從定義上來說Hadoop的核心就只有這三大技術,但實際上有許多開源專案圍繞著Hadoop核心,例如搜尋的Solr、串流運算的Spark等等,這些都是開源技術專案,彼此之間沒有相互競爭的必要,所以就可以合起來形成廣大的Hadoop生態系,相互證明Hadoop平臺更好用。

雖然目前就我所知,大多數人仍認為HDFS非常好用,而YARN也是排程與資源分配的最佳選擇,但長遠來說,像是Mesos這樣的技術,如果在未來能受到更多人的青睞,Cloudera就一定會支援Mesos。

就我而言,我最在意的是技術必須持續進步,讓人們可以擁有最好的技術,而只要是人們認為最好的技術,我們就會支援。現在我們大多數的客戶認為Hadoop系統是最好用的,那麼我們就會繼續支援。然而這並不代表Cloudera一成不變,未來若有更好的技術出現,我們也一定會支援,而這就是開源技術的優勢,讓我們不會故步自封。

相反的,站在源軟體對立面的傳統軟體世界,軟體公司一定會捍衛自家的技術,至死方休,即便競爭對手提出更新更好的技術,他們也不可能採用。而在今天的開源軟體世界,我們就可以擺脫這樣的困境,一旦有人提出了更新的技術,而且事實證明這項技術更好,那麼我們就會採納,以協助客戶使用更好的技術。我們的終極目標就是支援客戶採用最佳技術。

很多企業都想要採納大數據技術,但聽說Hadoop是進入門檻很高的技術而卻步,Hadoop是否真是難以入門?

我們發現幾乎所有Cloudera的客戶在尚未成為客戶之前,都已經採用免費的開源版本Hadoop,這就表示Hadoop的進入門檻並不高,因為企業可以自己先嘗試使用,例如中國聯通,早在他們成為Cloudera的客戶之前,他們已經自己採用Cloudera的Hadoop版本,因為他們可以免費取得,而且又容易安裝執行,就這樣一用就好幾年,直到最近他們的架構變大了,才開始尋求Cloudera的支援。

近年來開源軟體的成功有目共睹,但是開源軟體的商業模式卻仍是個大問題。過去十多年來,開源軟體最成功的模式是Red Hat(紅帽),然而現在開源軟體可謂百家爭鳴,開源軟體的環境、企業對於開源軟體的需求,遠不同於當年的Linux時代,許多技術開發人員紛紛投入開源軟體,也積極尋找成功的商業模式,對於接下來十年開源軟體的商業發展,你有什麼建議?

這是一個棘手的問題,但很顯然,我們需要一個答案。人們喜歡開源軟體,而開源也是軟體技術開發的一個美好方法,但人們同時需要廠商協助導入技術。對廠商而言,要能在市場上生存就必須要有商業模式。然而是否有一個能讓所有開源軟體公司一體適用的商業模式,現在言之過早,不過我們都明白身為軟體產業的一員,你必須嘗試,試著找出這個答案。

開源軟體目前有幾種不同的商業模式,其中一種是提供代管服務,代表公司如Amazon,透過提供雲端服務來收費;另一種則是將軟體以開源方式免費供應,再由提供支援服務來收取費用。我認為,軟體公司的生計若只維繫在客戶需要的支援服務,只靠支援服務的收入來支撐一家軟體公司永續發展,頗為困難;而雲端服務的模式,亦無法滿足所有人的需求,畢竟有些企業會想要在自己的資料中心擁有如同公眾雲一樣的雲端服務,或是多種型式的混合雲。

Cloudera目前的商業模式則是核心平臺開源,管理軟體收費。我們認為負責儲存與處理資料的核心平臺必須開源,程式碼必須公開才能夠讓人信任,而且也不用擔心日後被廠商壟斷綁死。至於協助管理叢集系統、軟體設定、系統監控與優化的管理軟體,則是我們可以銷售的。這些收費的管理軟體是獨立於Hadoop核心軟體之外,所以企業仍然可以免費使用Hadoop,而IT人員則藉助管理軟體的優勢,讓Hadoop軟體有效率地運作。這是目前我們選擇的商業模式,它實際運作良好,但我們也繼續尋找其他的可能性。

這個商業模式對Cloudera而言之所以是最佳模式,主要是因為我們打造一個廣大的平臺;但對其他開源軟體公司而言就未必是最好的商業模式。對其他開源軟體公司而言何者是最佳商業模式,這個答案我恐怕無法提供,畢竟我們的業務型式不盡相同,說不定有別的模式更適合其他的開源軟體公司。不過可以肯定的是,觀察未來10年成功的開源軟體商業模式,將會是一件很有意思的事。

熱門新聞

Advertisement