Results tagged “Hadoop” from Hadoop Taiwan User Group

淺談雲端運算新趨勢與 Hadoop 平台之崛起
國家高速網路與計算中心 王耀聰

** 本文亦刊登於網管人雜誌第 53 期 ( 2010 年六月號 )

坐看風雲險中生

  隨著網際網路的普及,各種連網裝置讓我們的生活更加地便利。然而隨著人們產生資訊的速度越來越快,數量愈來愈多,大量通訊不僅塞爆了實體的網路頻寬,無形中也正侵蝕著你我大腦的資訊頻寬。為了解決資訊爆炸所造成的困擾,順應隨時隨地連網的趨勢,替企業達成精簡資訊成本的目標,一種嶄新的軟體服務模式與資訊架構革命正以撲天蓋地之姿席捲全球,Google執行長施密特(Eric Schmidt)於2006年8月9日SES'06會議中首次使用「雲端運算(Cloud Computing)」來形容無所不在的網路服務,緊接著Amazon更以 Elastic Compute Cloud(簡稱EC2)命名其虛擬運算資源服務[1],[2]。2007年10月8日,Google與IBM發佈合作新聞稿,擬於美國境內七所大學教授如何處理海量資料的高速計算技術,從此引爆雲端運算的討論熱潮[3]。2008年時值全球金融風暴肆虐,多數人均擔心雲端運算只是一時的口號。2009年4月24日,美國國家標準局(NIST)起草雲端運算的標準定義[4];於同年5月,歐巴馬政府更明白地在2010年度國會預算書上,指出雲端運算是重要施政重點[5]。隨即,英國、日本、韓國等亦相繼宣佈將建立政府雲端的計畫,作為振興經濟的強心針。2010年被媒體喻為台灣的雲端元年,但每當談到雲端運算,不知大家是否心中仍存著諸多疑惑,冷眼看那不同廠商各說各話。底下就讓我們細說從頭,先給大家一個關於雲端運算的正式定義、看看雲端的技術演進史,最後說明為何Hadoop這個處理海量資料的軟體平台會逐漸被國際資訊大廠所重視。

笑談雲端五四三

  漫畫裡的呆伯特對老闆突然丟來的奇怪問題,總能用簡單的一句話敷衍過關。那麼如果要您用一句話簡單說明什麼是雲端運算,那該如何解釋呢?且讓小弟不聰贈送各位正經版與幽默版各一句來當作應對妙招,正經版可答道「雲端運算就是隨時隨地運用各種裝置來存取想要的服務」,幽默版可笑曰「雲端運算談的不外乎五四三(台語)啦~」倘若有人反譏您胡說八道,還有雲端口訣可以背得對方聽:「一個基本精神、兩個極端產業、三個服務模式、四個佈署模型、五個基礎特徵」,這不恰恰就是五四三二一嘛?!關於這雲端口訣的五四三可不是隨便說說,真是取自美國國家標準局(NIST)的雲端標準定義呢[6]!以下為各位看倌逐一說個明白。

  所謂「五個基礎特徵」,包括:(1)隨需自助服務(On-demand self-service)、(2)隨時隨地用任何網路裝置存取(Broad network access)、(3)多人共享資源池(Resource pooling)、(4)快速重新佈署靈活度(Rapid elasticity),和(5)被監控與量測的服務(Measured Service)。這五個基礎特徵的典型代表當然是Amazon Web Service。專家們認為未來進入雲端運算的時代,每個系統管理員將不再需要擔憂採購硬體的時間與流程,而是改以租賃方式,動態地根據需求,自助啟動或關閉所負責的資訊服務,而這些服務都是透過各種網路裝置來存取。此外,由於全球不同企業共享這些軟硬體甚至人力資源,從統計與機率上,若產業異質性高,便能有效地互補彼此尖峰使用的時間,間接降低了不同企業的資訊成本。當然為了達成動態調配共享資源的目的,雲端服務供應商必須具備快速重新佈署的靈活度,好讓各種被釋放出來的資源能馬上被其他客戶使用。最後,任何雲端服務都涉及計價行為,因此所有服務必須能被監控與量測,好統計租賃的帳單金額。

  至於「四個佈署模型」,指的是(1)公用雲端(Public Cloud)、(2)私有雲端(Private Cloud),及不常聽到的(3)社群雲端(Community Cloud)、(4)混合雲端(Hybrid Cloud)。公用雲端顧名思義就是全球一起共用某個雲端服務廠商的資源池,多半適用於資料機敏性低的新創事業或中小企業;而私有雲端則是由企業自行建置共享資源池,故任何資料機敏性高的產業都可能需要自行打造。社群雲端係指由多個組織共享資源池,故較合適具共享研究資料需求的學研單位合資建置;而混合雲端泛指混合了上述三種雲端型態,須基於標準或運用新技術來確保資料與應用程式在不同平台間的移植性。

  關於「三個服務模式」,也可稱之為不同雲端服務商的市場區隔,分別為:(1)架構即服務(Infrastructure as a Service,IaaS)、(2)平台即服務(Platform as a Service,PaaS)與(3)軟體即服務(Software as a Service,SaaS)。Amazon EC2的服務就是典型的架構即服務,讓用戶可自行租賃所需的運算、儲存與網路資源。而Google App Engine則是典型的平台即服務,讓用戶可以在共通的平台上進行程式開發或軟體佈署。大家常用的Yahoo、Gmail、Facebook等都算是軟體即服務的範疇,過去購買套裝軟體的模式,如今已逐漸典範轉移,改依需求變化,動態地變更租賃軟體服務的授權數量,用多少付多少。從企業經營成本面來看,過去採購硬體的固定成本,如今轉變成變動營運成本,在金流調度上將更有彈性。

  口訣最後的「兩個極端產業,一個基本精神」,談的是未來雲端將持續往兩個極端發展,一邊是雲(資料中心)的產業供應鏈,一邊是端(行動裝置)的產業供應鏈。雲的發展將是地理集中而標準化,而端的發展將是位置變異而多元化。而雲端運算之所以能融入各行各業,憑藉的是「形成網路服務」這個基本精神。惟有形成服務,才有商業行為,方能串起供需鏈,進而促進經濟的永續發展。

回顧資通六十載

  談完雲端的五四三,相信各位已對雲端運算有比較清晰的概念。那麼雲端運算代表的是全新技術嗎?其實不然,雲端運算只是軟體演化必然的趨勢。讓我們一同回顧資通產業過去六十年的發展:1960年代運算主力是超級電腦,1970年代才有個人電腦誕生,1980年代制訂TCP/IP通訊協定,1990年初期因為有GNU自由軟體基金會與Linus的貢獻,才產生第一次高速運算革命,讓個人電腦叢集(PC Cluster)以企鵝雄兵打敗超級電腦,大幅降低運算成本,平行運算(Parallel  Computing)頓時蔚為顯學。1990年代後期網路逐漸導入金融機構,分散式物件技術才逐漸流行。演化至2000年初,SETI@Home尋找外星人計畫,向全球電腦用戶借螢幕保護的運算資源,開啟分散式運算(Distributed Computing)的新頁。隨即全球高速電腦中心起而效法分散式運算精神,提倡格網運算(Grid Computing),擬能建立虛擬組織共享全球運算資源。格網運算雖立意良善,卻因遲遲無法形成服務而難以進入產業應用。直至2006年Amazon推出 Elastic Compute Cloud(EC2)才成功地建立隨需運算服務,開啟雲端運算的序曲。

  歷經超級電腦、平行運算、分散運算與格網運算,雲端運算繼承了平行運算的叢集技術、融合了分散運算的容錯特性,發展出「資料中心即電腦(Data Center as a Computer)」的新思維[7]。有別於格網運算將資料搬到有空閒計算資源的思維,雲端運算強調把工作丟到資料所在主機去計算。在雲端的年代,資訊人惟有不斷充實多核心、平行、分散式運算與網頁程式設計等技能,才有機會住進未來那朵大雲裡。

喜獲吉象過重山

  看完以上的趨勢分析,或許您不禁想問:「縱使知道雲端趨勢很重要,若想打造私有雲端,下一步該做什麼呢?總是得腳踏實地,而不是空口畫雲吧~」若您想打造私有雲端,可參考如下圖中所列舉不同技術分層的自由軟體,來建置您專屬的雲端服務。目前有專家學者警告企業導入雲端不該只是採購硬體或導入虛擬化。小弟認為這只是導入雲端第一個階段,後續將視各企業屬性不同而導入平台即服務與軟體即服務的相關技術。倘若您的企業需要架構即服務,擬導入虛擬層與控制層,這裡建議的自由軟體包括:Xen、KVM、OpenNebula與Eucalyptus這幾套。若您需要建置的是資料分析的平台服務,那接下來要介紹的Hadoop與美國資料探勘中心研發的Sector/Sphere都是首選。

  本文最後要談的是Hadoop這個海量資料分析的軟體平台,它有何特殊呢?為何Google與IBM合作教授雲端課程採用它?為何Yahoo搜尋引擎、Facebook社交網站、Last.fm網路電台、Joost網路電視等均採用它來進行資料分析呢?首先,倘若說Google是當今最能引導技術風潮的品牌,想必大家不得不同意。那麼Google的關鍵技術是什麼呢?Google有三大關鍵技術:其一是Google File System,為了提升營運容錯率,Google重新設計了一套分散式檔案系統來存放全球的網頁內容、電子郵件、照片、影片等;其二是MapReduce演算法,Google宣稱多數的資料分析都可以靠此一演算法解決;其三是BigTable分散式資料庫,Google將存在Google File System中的資料,經過MapReduce運算後,轉換成巨大的資料表,這個資料表有別於傳統關聯式資料庫,僅存放成對的Key-Value。因此,當您下達一個查詢網頁或查詢信件的動作前,Google早已將所有網頁、信件進行拆解分類存進BigTable,查詢下達時只是從BigTable查Key等於關鍵字對應的所有Value罷了。

  然而Google的三大關鍵技術沒有原始碼或軟體可讓其他企業安裝使用,好在Google佛心來著,分別公開了Google File Ssystem、MapReduce與BigTable的三篇論文,讓Hadoop這套軟體平台的創始人Doug Cutting能參考論文,重新實作了Hadoop Distributed File System(HDFS)與MapReduce API。諸多過去無法分析的資料,如今有了Hadoop軟體平台後,都開始可以分析了。例如:電信業者如今可以分析手機在基地台漫遊的特性,提供更好的在地費率。信用卡業者如今可以每天定期分析各種信用貸款所產生的風險,動態調整信貸利率。便利超商如今可以分析消費者的購買習慣,動態調整架上存貨數量。甚至新興產業,如生醫資訊、智慧電網等都可以運用Hadoop平台來進行資料探勘與趨勢預測。若您的企業有儲存海量資料的需求,有分析海量資料的需求,或者面臨資料庫過度龐大,正在尋求分散式資料庫或資料倉儲的技術,那Hadoop或許是一個已通過商業驗證的選擇。只要懂得駕馭Hadoop這隻大象,它將能駝著您爬過一座座資料大山,幫您犁出隱藏在群眾中的邏輯。
 

open_source_for_private_cloud.png
▲ 建構私有雲端運散架構的自由軟體

[1] Did Google's Eric Schmidt Coin "Cloud Computing"?
    - http://cloudcomputing.sys-con.com/node/795054/print
[2] Search Engine Strategies Conference 2006
    - http://www.google.com/press/podium/ses2006.html
[3] Google and I.B.M. Join in 'Cloud Computing' Research
    - http://www.nytimes.com/2007/10/08/technology/08cloud.html
[4] The US Federal Government defines Cloud Computing
    - http://www.elasticvapor.com/2009/05/us-federal-government-defines-cloud.html
[5] President Obama's 2010 Budget Highlights Cloud Computing
    - http://kevinljackson.blogspot.com/2009/05/president-obamas-2010-budget-highlights.html
[6] NIST Definition of Cloud Computing v15
    - http://csrc.nist.gov/groups/SNS/cloud-computing/cloud-def-v15.doc
[7] The Datacenter as a Computer
    - http://www.morganclaypool.com/doi/abs/10.2200/S00193ED1V01Y200905CAC006
最近開始有一些廠商透過 e-mail 傳達希望協助徵才的需求,
考量職缺是促進社群蓬勃發展的另一個動力,因此代公佈兩個 Hadoop 相關職缺

一個是 JAVA Architect/Senior JAVA Developer/JAVA Developer
一個是 Java Hadoop / Nutch Developer

各職缺描述如下:

職務名稱:  JAVA Architect/Senior JAVA Developer/JAVA Developer
需求人數:  2~4人
上班地點:  台北市南港軟體園區
上班時段: 上班時間:10:00;下班時間:19:00
休假制度:  週休二日

學歷要求:  大學、碩士

外語條件:  英文(聽/精通、說/精通、讀/精通、寫/精通)


[福利制度]
(1)員工認股制度 stock options
(2)保障年薪14個月

(3)週休二日及優於勞基法的休假制度(
到職當年度可享有7天特休假)
(4)彈性上下班
(5)人性化管理

[Job Descriptioni]

Our R&D center in Taipei, Taiwan is currently looking for experienced
Java developers to join the development team of CodeSecure. The team
is comprised of talented technologies who can think outside of box and
come up with innovative approaches to complex problems.


[Required Attributes]

Professional experience designing, implementing and maintaining
complex & distributed components
A passion to develop high-quality and scalable applications that solve
people's problems
Strong object-oriented design skills and a drive to create structured,
efficient and clean code
Good sense in algorithm and data-structures

Expert-level skills in writing maintainable components in Java
Basic understanding of version control systems (SVN, Mercurial) is a plus
Able to produce good documentation for codes
Basic experience with Linux system is a plus

A result driven team player
Likes coding

Innovative, always in search for better methods to improve
productivity and quality
Keen to learn new skills to adapt business needs
Be able to think independently, coupled with good communication skills

相關網站(官網及影片介紹):
http://www.youtube.com/watch?v=G7nCLP4b6us
http://armorize-cht.blogspot.com/2010/02/caleb-sima.html
http://www.armorize.com

履歷請寄 tina at armorize dot com


職務名稱:  Java Hadoop / Nutch Developer

需求人數:  2人
上班地點:  台北市南港軟體園區
上班時段: 上班時間:10:00;下班時間:19:00
休假制度:  週休二日
學歷要求:  大學、碩士
外語條件:  英文(聽/精通、說/精通、讀/精通、寫/精通)

[福利制度]
(1)員工認股制度 stock options
(2)保障年薪14個月
(3)週休二日及優於勞基法的休假制度(到職當年度可享有7天特休假)
(4)彈性上下班
(5)人性化管理

[Job Descriptioni]

Our R&D center in Taipei, Taiwan is currently looking for experienced
Java developers to join the development team of HackAlert. We are
currently in the process of migrating part of the product onto the
Hadoop platform, to leverage the Nutch crawling engine and distributed
storage like HBase. You will also interface with dynamically created
virtual machines in the cloud.

[Required Attributes]

*Professional experience designing, implementing and maintaining
complex & distributed components
*A passion to develop high-quality and scalable applications that
solve people's problems
*Strong object-oriented design skills and a drive to create
structured, efficient and clean code
*Expert-level skills in writing maintainable components in Java
*Knowledge about distributed systems and parallel computations
desired, experiences with Hadoop/Map-Reduce a big advantage
*A deep understanding of the HTTP protocol, web crawling in general
and previous exposure to Nutch is a big advantage
*Basic understanding of distributed storage systems (Big Table, HBase..) desired
*Basic understanding of version control systems (SVN, Mercurial) is a plus
*Experience with Linux systems and basic web server maintenance and
deployments is a plus
*Experience with remote VM management a plus
*Experience with Agile Methodologies is a plus

相關網站(官網及影片介紹):
http://www.youtube.com/watch?v=G7nCLP4b6us
http://armorize-cht.blogspot.com/2010/02/caleb-sima.html
http://www.armorize.com

履歷請寄 tina at armorize dot com

工商服務一下,代某知名半導體廠貼一下職缺。

Job description:

  • Study and implement cloud computing technologies and provide proposal for critical system availability improvement for high volume data processing improvement.
  • Collaborate with project teams to pilot and promote cloud computing technologies.
Job requirement:

  • MS degree or above in computer science or related disciplines.
  • At lease 2-year experience in the Hadoop/map reduce, virtualization, grid computing or cloud computing.
  • Ability to learn and apply new technologies quickly.
  • Self motivated, good teamwork and problem solving skill.
  • Experienced in data center management  related fields is a plus.
  • Fluent English communication skill is a plus (oral and written).
工作地點:新竹

履歷資料或相關職缺問題請寄至 yytai AT tsmc DOT com
各位同學,

離開課還有幾天,終於向 Cloudera 爭取到學生特惠價 25,000
不過無論是先前的三人團報每人 39,000 或學生五人團報每人 25,000
我看過網站說明,都是必須信用卡線上付款才有這樣的優惠,而且不提供發票。
若需要發票,則維持原價每人 59,000,且必須在網站上選"Show other payment options"

cloudera_other_payment.jpg

只要(1) 具備學生身分,(2) 未來或過去寫過 Hadoop、Sqoop、Hive、Pig 等相關雲端運算論文者,
請一樣填寫這份表格,我會跟你們聯繫。

https://spreadsheets.google.com/viewform?formkey=dDNpNy1HZHhWQkI2SmhncW5Cei1xcnc6MA

- Jazz

最近巡迴演講的時候,有一些學生問我該不該參加教育訓練跟認證考試,
也提到想團報,可是卻不好找團員,所以如果有興趣,
又不想公然把 e-mail 丟上 hadoop.tw mail list  的,那填這個表吧。

https://spreadsheets.google.com/viewform?formkey=dDNpNy1HZHhWQkI2SmhncW5Cei1xcnc6MA

至於大家常問的問題,以下統一回給大家作參考:

F.A.Q.

Q1: 學生到底該不該考 Cloudera Hadoop Training and Certification?
A1: 如果沒有「長輩」贊助的話,是略嫌貴了點。
PS. 小道消息:以後可能會有純考認證的機會。如果已經面臨畢業找工作的壓力,又想提升求職競爭力,那只好自己考慮一下荷包裡的小朋友夠不夠多張了.....我會持續橋看看能不能有「學生價」....倒數兩週了....

Q2: 考 Hadoop 證照對找工作有沒有幫助?
A2: 嗯~國內很難講,國外至少在 Hadoop LinkedIn 看到很多工作機會。國內有興趣到 Yahoo, 中華電信, 趨勢的可以考慮看看。
PS. 好奇國外有哪些工作機會的請參考 LinkedIn Hadoop User Group 的 Job 版

Q3: 參加 Cloudera 紐約場次教育訓練有何心得?
A3: 教材是真的蠻扎實的,縱使我們有先翻過英文版,第二天對於企業員工來說,應該是可以解答一些心中的疑惑,像是怎麼跟資料庫整合。但第三天沒有演算法基礎的下午會有點吃力,Hadoop 初學者要有鴨子聽雷的心理建設,第一天下午就講了非常多底層實作的秘辛。
PS. 推薦 Yahoo Developer Network 的 Hadoop Tutorial

Q4: 考照難不難?
A4: ㄜ~老實說我有考,但是第一次沒有過,正在等七天後才能考第二次。線上考試,限時一個半小時,共六十題選擇。內容以 Hadoop 核心觀念為主。警告:五個答案選項會非常地模擬兩可,常常任兩個選項只差幾個英文字,基本上國外考過的都說難。

Q5: 有沒有題庫?
A5: ㄜ~(消音)如果跟大家說有,這樣就快變成考照補習班招生了~

Q6: 其他.......
A6: 推薦有機會的話,請參加 Jimmy Lin 主講的華盛頓場次,他在 MapReduce 方面很強,最近發表一本 MapReduce 的免費電子書,又是馬里蘭大學雲端運算中心的成員,是強者中的強者。

- Jazz

Cloudera Hadoop Training in Taipei

|
各位 Hadoop 同好:

好消息,由於大家熱烈地投票,Cloudera 決定來台灣舉辦教育訓練與認證。
有打算要考 Hadoop 認證的社群朋友們,請找金主支援考照。(雖然已經比美國便宜一半了)

Cloudera Hadoop Training in Taipei


Greetings from Cloudera! We hope you had a joyous New Year celebration.

You recently filled out a survey expressing interest in Hadoop
training in Taipei.

We are happy to offer a 3 day developer training session in Taipei on
April 12-14: http://www.eventbrite.com/event/571870480

To support the local community, we are offering an incredible discount
for individuals who pay with their credit card (about 50%). We are
also happy to invoice your company at our standard rate.

If you would like to consider a private session for groups over 20
people, please let me know, as we may be able to stay in Taipei for an
extra week.

Cheers,
Christophe

[FYI] 自行編譯出Hadoop 0.20.1+ Eclipse Plugin

|
打從hadoop 0.20.0 以前,我們用Eclipse 開發Hadoop程式,搭配放在hadoop_home/contrib/eclipse-plugin目錄下的 hadoop-eclipse-plugin.jar 來用是事半功倍,如虎添翼。

不過問題是,該plugin 並沒有說明適用於哪個eclipse 版本,因此某些版本的eclipse用了該套件會有某些功能無法運作的情況(如:run on hadoop 按鈕無法使用)。更何況,hadoop 0.20.1 以後,hadoop_home/contrib/目錄下已經沒有 eclipse-plugin 可以用了,開發者的目的應該就是要各位自己編譯產生吧?

但自行編譯產生出eclipse plugin 需要一些KnowHow,偷懶的方法可以1. 用hadoop 0.20.0 的plugin 2. 用別人已經編譯好放在網路上的plugin 。   不過問題回過頭來,eclipse 版本不正確還是會導致某些功能無法使用。

若你已經準備好要自己編譯 hadoop eclipse plugin ,可以看這篇
http://trac.nchc.org.tw/cloud/wiki/waue/2010/0211

「雲端運算與應用」系列演講(一)
雲端運算於地理資訊系統之應用
"Cloud Computing and its Application" lecture series:
Cloud Applications for
Geographic Information System (GIS)

   地理資訊系統(Geographic Information Syste,GIS)必須整合各項相關地理資訊化及資料庫,範圍涵蓋資料擷取、編修、更新、儲存、查詢、處理、分析及展示等功能。由於所需儲存與分析的資料量相當龐雜,非常需要導入雲端運算海量資料處理的技術。此次演講很榮幸邀請到在開放式地理空間協會(Open Geospatial Consortium,OGC)十分活躍的逢甲地理資訊中心來為我們介紹目前在地理資訊系統方面的成果與未來展望。此本會議不收取任何報名費用,歡迎各界踴躍參加。礙於此次會議場地座位有限,請速上網報名(http://registrano.com/events/cloudtalk20100210),額滿為止。也請大家代為宣傳

10:00~10:40 講題:逢甲地理資訊中心近期成果簡介與未來展望
講者:衷嵐焜
   逢甲大學地理資訊系統研究中心 研發部經理
10:40~11:10 講題:當企鵝龍遇上小飛象
   ─ 國網中心 Hadoop 實驗叢集簡介
講者:王耀聰
   國網中心 格網技術組 副研究員
11:10~12:00 小型座談會 ─ 談 Hadoop 與 GIS 之可能合作議題

註一:響應政府儉樸原則,本活動不提供餐點,敬請見諒。
註二:第二場演講預計二月二十四日下午一點半開始,邀請台灣微軟介紹 Arzure 平台與 Hyper-V 虛擬化技術。

Hadoop4Win 0.1.2 版釋出供下載

|
軟體簡介

hadoop4win,顧名思義為『Hadoop for Windows』,主要是提供 Windows 平台上簡易安裝 Hadoop 的批次安裝檔。此批次安裝檔內容,主要參考自國網中心企鵝龍與再生龍團隊成員孫振凱先生之 drbl-winroll 作品,抽取安裝部分程式改寫成 hadoop4win 所需的步驟。

hadoop4win 目前包含三大軟體組成:

  • Cygwin - 提供精簡版,類似 Linux 的環境
  • JDK 1.6.0 update 18 - 運行 Hadoop 必須的 JRE(Java Runtime Environment) 與編譯程式所需之 javac 編譯器
  • Hadoop 0.20.1 - 包含 Hadoop 0.20.1 原始程式與中英文說明文件檔

檔案下載

改版紀錄

  • 0.1.2 alpha - 2010/02/06 :
    • 改回 Cygwin 1.5.25 版本的套件庫 - 感謝 Yi-Kai Tsai 回報 0.1.1 版無法正確執行 wordcount 範例的 BUG
  • 0.1.1 alpha - 2010/02/04 :
    • 改用 Cygwin 1.7.1 版本的套件庫 - 並且改用 "-P" 參數指定欲額外安裝套件
    • 修改 hadoop4win-setup.bat 批次檔,以因應 Cygwin 1.7 版本的 setup.exe 差異。
    • 新增 HADOOP_HOME、HADOOP_CLASSPATH、HADOOP_CONF_DIR 環境變數至 hadoop-env.sh - >感謝 Yi-Kai Tsai 建議
    • 新增 /opt/hadoop/bin 與 $JAVA_HOME/bin 到 /etc/profile 的 PATH 環境變數,讓每個>使用者可以簡單輸入 hadoop 指令 - 感謝 Yi-Kai Tsai 建議
    • 修改 start-hadoop 並加入 start-hadoop-daemon 命令,另行開一視窗啟動 HDFS Name Node、Data Node 與 MapReduce Job Tracker、Task Tracker 子程序。如此一來可以避免 CTRL+C 觸發 SIGINT 而強制停止所有 java 程序。 - 感謝 Yi-Kai Tsai 找出重現 BUG 的主因(Ctrl+C)
    • 新增 stop_hadoop 指令至 ~/.bash_logout 與 /etc/skel/.bash_logout,以確保離開 Cygwin 時關閉 HDFS 與 MapReduce -- 若要保留 java 程序,可手動移除
    • 新增 hbase-init、start-hbase、start-hbase-daemon、stop-hbase 來初始化 hbase 下載、安裝、設定、啟動 ZooKeeper、Master、RegionServer 的程序。
  • 0.1.0 alpha - 2010/01/22
  • 0.1 alpha 
2010/01/22 基於 drbl-winroll 修改為 hadoop4win 嚐鮮版

反應意見


安裝方法

  • STEP 1 : 首先下載 hadoop4win 任一版本,並存至硬碟(如 D:)。使用 Windows XP 以上版本內建的解壓縮工具將 zip 壓縮檔解開。
  • STEP 2 : 在 hadoop4win-setup 目錄中,執行 hadoop4win-setup.bat 批次檔。
    • 註:預設將安裝到 C:/hadoop4win 中,若因硬碟存取權限較嚴格,需修改安裝路徑,請自行修改 hadoop4win-setup.bat。
  • STEP 3 : 一開始會出現 Cygwin 的安裝畫面,並自動開始安裝 Cygwin。
  • 接著批次程式將會把 Hadoop 單機版所需之 Java 開發環境 (JDK 1.6.0 update 18)與 Hadoop 0.20.1 壓縮檔拷貝至安裝目錄。若您下載的是網路安裝版本,會看到批次檔先從網路上下載兩個壓縮檔,才開始安裝。
  • STEP 4 : 當拷貝完成後會進入 Cygwin 視窗。此時,請輸入指令『hadoop4win-init』。
  • 此初始化指令將會進行 JDK 與 Hadoop 解壓縮動作
  • 最後將會執行 Hadoop Namenode 的格式化
  • STEP 5 : 按下任意鍵會依序啟動 Hadoop Name Node, Data Node, Job Tracker, Task Tracker
  • 並使用預設瀏覽器依序開啟 http://localhost:50030http://localhost:50070 (若使用 IE 可能會只看到一個畫面)

測試方法

  • STEP 6 : 此時系統已完成 Hadoop 0.20.1 的 tar ball 安裝,可以參考 國網中心雲端運算課程(一) 之教學進行相關測試。目前將 Hadoop 0.20.1 安裝於 /opt/hadoop 路徑下,故使用者必須先切換至該目錄才能進行相關指令操作。
    $ cd /opt/hadoop
  • STEP 7 : 練習 HDFS 指令: 『bin/hadoop fs -put <local file/dir> <HDFS file/dir>
    $ bin/hadoop fs -input conf-org input
  • STEP 8 : 練習 HDFS 指令: 『bin/hadoop fs -lsr <HDFS file/dir>
    $ bin/hadoop fs -lsr
  • STEP 9 : 練習 MapReduce 丟 Job 指令: 『bin/hadoop jar <local jar file> <class name> <parameters>
    $ bin/hadoop jar hadoop-0.20.1-examples.jar wordcount input output
  • STEP 10 : 練習從 http://localhost:50030 查看目前 MapReduce Job 的運作情形
  • STEP 11 : 欲離開 Cygwin 環境前或者要暫時關閉 Hadoop 系統時,請輸入指令『stop-hadoop』。

  • STEP 12 : 欲重新啟動 Hadoop 系統時,請輸入指令『start-hadoop』。

已知問題

  • [備註] 由於 Hadoop 0.20.1 的 HDFS 檢查比較嚴謹,因此單機狀態下,您會看到 http://localhost:50070 顯示『Safe Mode is ON』等字樣,代表 HDFS 目前是被封鎖住寫入權限,需等待至少 30 秒以後才會恢復正常。亦因此,http://localhost:50030 若剛開始沒有 Task Tracker 連上來,也是因為 HDFS 處於安全模式(Safe Mode)造成,須等 30 秒後切回正常模式才會連上。
    • [備註] 若需要重新啟動 Cygwin 環境,請至 C:\hadoop4win 目錄執行 cygwin.bat 批次檔
當今三大資料庫公司 (微軟,IBM,Oracle) 對於近年爆紅的資料處理技術 Hadoop 分別有著決然不同的反應.

SybaseTeradata 等 data warehouse 公司紛紛擁抱 Hadoop/Mapreduce 技術的時候,  很顯然的, 微軟正在抗拒著. 威斯康辛大學教授 David J. DeWitt 同時也是 Microsoft tech fellow 說 "我們不打算引入Hadoop到我們的產品當中". 他對於 Hadoop 不感興趣其實並不令人意外, DeWitt 教授是 parallel SQL databases 學術專家, 年初才和他人共同發表了一篇關於 SQL Server 仍可以在大多數的工作上擊敗MapReduce 的論文.

IBM 本身是 Apache 軟體基金會的主要贊助公司之一,不令人意外地, IBM 對 Hadoop 的發展則是樂觀其成. Anant Jhingran, IBM information management division 的 CTO 提到: "我並不是說Hadoop 融合資料庫可以解決一切問題, 但是最終每個公司將會想要擁有 Hadoop 技術, 只是不確定是以哪種形式". IBM 在實驗室進行研究開發的同時, 也正與數十家企業用戶進行相關實驗計劃.

Oracle 有可能是 Hadoop/MapReduce 崛起後最大的輸家, 不僅僅是因為它本身目前是第一大資料庫軟體廠商,也因為資料庫在延展性(Scalability)方面的名聲不佳 - 而這正是 Hadoop/MapReduce 的強項. Oracle 並未正式回應, 不過就在今年十月,它們發佈了一篇 blog 談到 "事實上我們一直以來都在用 MapReduce"



hadoop-tw.jpg


台灣 Hadoop 使用者社群會議
Hadoop Taiwan User Group Meeting 2009


繼格網運算之後,雲端運算被視為下一代資訊架構的主流。雲端運算平台 Hadoop 及雲端資料庫平台 HBaseHive 均是目前諸多雲端運算服務的基礎架構。 Cloudera 是目前全球首先提供自由軟體 Hadoop 技術支援的商業公司,本次使用者會議特別邀請來自 Cloudera Christophe Bisciglia 來跟我們分享如何運用 Hadoop 打造雲端應用程式與軟體服務,並分享自由軟體的可行商業模式:教育訓練與認證機制。此外,也邀請了國內推動Hadoop 教學、軟體開發、社群建立的幾位同好來進行知識分享,包括:台灣雅虎老魚研究室國立台灣大學資訊工程學系通訊與多媒體實驗室國家高速網路與計算中心雲端運算研究小組。希望透過此次會議,讓更多有興趣瞭解 Hadoop 的夥伴相互交流,進行凝聚出台灣區的 Hadoop 社群。
本會議不收取任何報名費用,歡迎各界踴躍參加。礙於此次會議場地座位有限,請速上網報名(http://registrano.com/events/hadoop-tw),額滿為止。
也請大家代為宣傳(議程PDF版)。

Cloud Computing is a hot research topic since year 2007. Hadoop, HBase and Hive are the key components of many cloud computing infrastructures.  Cloudera is the first company to provide technical support of Hadoop. In this workshop, we invite Christophe Bisciglia to share the experience of how to build cloud services with Hadoop and  Cloudera's open source business model - training and certification. Besides, we also invite local developers of Taiwan Hadoop communities to share their projects.
  This workshop is now free to register. Please use following URL to join this event.  http://registrano.com/events/hadoop-tw

09-10-21_Schedule_small.png


Hadoop 計畫分割

|
應該有些人注意到前一陣子 Hadoop 決定進行計畫分割,最主要的改變是將原本 Hadoop Core 這個計畫分割為三個計畫, Hadoop Common, HDFSMapReduce. 為何要進行這樣的改變呢? 主要的原因是 Hadoop 越來越熱門了! 首先碰到問題是原先開發用的 mail listing 量暴增 , 每天都有數十個以上的 JIRA 訊息. 再來是計畫本身的 code base 也不斷的在長大 (300,000+ lines of Java) 另外就是之前有蠻多人很有興趣的部份,單獨使用 HDFS. 因此決定將原本的 Hadoop Core 分成三個計畫, 分別有各自的 svn repository , JIRA 和 mail lists. 原先使用者用的 core-user@hadoop.apache.org 更名為 common-user@, 另外對應產生了 mapreduce-user@ 和 hdfs-user@.

對於使用Hadoop上面來說, 短時間內 Stable 版本(0.18,0.19,0.20)不會有影響, 到 0.20.1 仍然會是以 single project 的方式 release. 之後每個 project 會分別有有自己的 release , 使用上將會需要同時安裝數個 packages. 同時 Configure 上也需要注意, 從 0.20 開始應該已經要把單一的 hadoop-site.xml 分開為 mapred-site 和 hdfs-site , 0.21 版之後才可繼續使用. 至於 API 方面, 從 0.20 開始 MapReduce 已經導入新的 API 但是尚未完全使用 , 將會在 0.20.1 修復完成, 同時 0.20.1 release 之後也代表了你應該準備升級你原來的程式碼了.

HadoopProjectSplit.png
Image from: Cloudera

Apache Cloud Computing Edition

|
前一陣子在 Hadoop mailing list 上看到有人問到說"我們要怎樣稱呼 Hadoop + HBase + Lucene + Zookeeper + etc ..比較好呢?" 孔子說的好 "必也正名乎!" , 大家都知道 Cloud Computing 是今年最火紅的 Term (其實在 Distributed computing 領域大約每十年會出現一個 buzzword), 相較今年各家廠商陸續各式各樣的 Cloud computing 產品, Apache 軟體基金會目前使用 "Apache Cloud Computing Edition" 來稱呼它 , 這名字有沿用當年頗為成功的 Java Enterprise Edition 的意思, 雖然本質是不一樣的東西, 但是強調這是個是跨語言的平臺. 目前正計畫整合更多相關的技術.

在 http://svn.apache.org/repos/asf/labs/clouds/ 可以看到目前草稿版的 slides , 其中對於為何要前進 Cloud ? 什麼是 Cloud application ? 目前該做什麼? 都有清楚簡潔的說明,想要真正了解 Cloud computing 的人不可錯過.
apache_cloud_computing_edition.jpg

今年的 Open Source Developers' Conference Taiwan 將於 台北市松仁路7號7樓 (國泰金融大樓) / 7F., No.7, Songren Rd., Sinyi Dist., Taipei City 舉辦, 4/17~4/19 為期三天. 其中第三天有一場介紹 HBase 的演講, 對於這套 on top of Hadoop DFS, column-oriented 資料庫系統有興趣的朋友歡迎參加.

YDN Lightning Talks: Hadoop

|
原始出處﹔YDN Lightning Talks: Hadoop - Part 1 Part 2


Hadoop 幫助Yahoo!電子信箱全球上億的用戶降低了垃圾郵件率. Yahoo!電子信箱的技術人員 Mark Risher 和 Jay Pujara 在這裡分享他們是如何用 Hadoop 做到的.

Mark 和 Jay 詳細解說在 Yahoo!電子信箱上如何用 Hadoop 來在幾分鐘內分解超過上億觸發垃圾郵件規則和行為的email. 他們將用最常用的 Hadoop implementation 來舉例,包括 StreamingPig. 想知道如何使用Hadoop的魔力來解決大量的資料問題嗎,那你可真要仔細看這則影片

跨產業應用思考--以線上遊戲為例

|
Hadoop, 這個分散式系統, 再加上 Map&Reduce 的計算, Google用來平行計算大量的資料, 在效能與容錯上表現得非常出色, 在本人服務的公司中, 應用這様的系統在處理某一批大量資料來說, 從過去以往舊程式的方法需要2星期左右完成, 現在只要10多分鐘就可以執行完畢.

同樣的應用, 如果套用在目前很熱的線上遊戲產業上, 可以應用的情形如下:

  1. 統計單一遊戲中, 所有玩家的操作動作中, 最常使用的技能排序
  2. 統計單一遊戲, 所有人的聊天問答的內容, 找出最常出現的關鍵字, 把這些關鍵字排序, 可以適當地幫助新手 (就像使用 google 在查詢時, 會自動帶出相關字)
    • 類似的關鍵字, 也可以提供給客服人員使用
    • 關鍵字的查詢, 也可以套用在web上, 當作是遊戲百科全書
  3. 快速分析遊戲中物品的產生記錄, 比如一個月內的物品產生記錄, 用來調整遊戲的掉寶率
以上就有可能可以應用Hadoop以及 Map&Reduce 的計算能力, 在短時間內完成.

一點意見, 可以參考看看, 說不定也可以應用在你熟悉的產業中. 
筆者研究「Uncompressed SequenceFile Format」檔案,一個個對照Hadoop的原始碼來驗證~ 心得整理如下:
從「Class SequenceFile」所描述的~ 基本上「SequenceFiles」有三種不同的檔案格式~ 它們分別為「Uncompressed SequenceFile Format」、「Record-Compressed SequenceFile Format」和「Block-Compressed SequenceFile Format」,後兩種都是採用壓縮的檔案格式~ 而文本主要介紹剖析「Uncompressed SequenceFile Format」~ 了解這一個檔案格式之後~ 另外兩個自然能得心應手~ 而官方針對這個檔案格式的描述如下:

seq.gif

每一種檔案格式都包含了共同的「SequenceFile Header」用來記錄一些基本資訊~ 如:keyClassName、valueClassName等...
本文以下圖的範例來介紹:

source.gif

筆者已用「紅→藍→綠」顏色的順序來標記~ 以方便對照~
0x53 0x45 0x51
這是SequenceFile Format的magic header「SEQ」,和一般的檔案格式一樣~ 都是用來判別這個檔案是否屬於「SequenceFile Format」。
0x06
版本編號,目前最新版為「SEQ6」。
0x19 0x6F 0x72 ..... 0x74
這部份屬於keyClassName(Key的類別名稱),而第1個Byte(0x19)用來表示此字串的長度,此範例為「org.apache.hadoop.io.Text」。
0x22 0x6F 0x72 ..... 0x65
這部份屬於valueClassName(Value的類別名稱),第1個Byte(0x22)也是用來表示此字串的長度,此範例為「org.apache.hadoop.io.BytesWritable」。
0x00
是否支援compression?「0x00」=否 (此為Boolean所以佔1個Byte)
0x00
是否支援blockCompression?「0x00」=否(此為Boolean所以佔1個Byte)
0x00 0x00 0x00 0x00
metadata資訊,此範例沒有包含任何「SequenceFile.Metadata」的資訊~ 所以輸出「0x00 0x00 0x00 0x00」(此為Int所以佔4個Bytes),而這四個Bytes也等同於metadata的長度,也就是至少一定會佔用這4個Bytes。
0x77 0xE5 0xEF ..... 0xA7
一個sync標記,用來表示一個「Header」的結束,此標記是亂數產生的~ 從原始碼中可得知此標記是由「new UID()+"@"+time」的方式再進行「MD5」編碼。
0x00 0x35 0x62 0x8B
整筆Record的size~ (此為Int佔4個Bytes),一筆Record包含「Key、Value」的內容資訊。
0x00 0x00 0x00 0x2C
Key內容的size~ (此為Int佔4個Bytes)。
0x2B 0x68 0x64 ..... 0x47
由於筆者用「org.apache.hadoop.io.Text」當Key,所以這裡的資訊是描述一個檔案的路徑名稱,第1個Byte(0x2B)用來表示此字串的長度,內容為「hdfs://nlp:9000/user/hdp/image/P1010099.JPG」。
0x00 0x35 0x62 0x5B
Value內容的size~ (此為Int佔4個Bytes)。
0xFF 0xD8 0xFF .....
筆者以JPEG檔案格式做為介紹~ 所以這裡是「0xFF、0xD8」開頭。


最後~ 雖然Hadoop官網沒有公佈詳細的格式介紹(還是筆者沒找到?) 希望本文能有所助益。
參考資源
SequenceFile - Hadoop Wiki
Class SequenceFile


HBase 介紹

|
Hadoop 除了擁有分散式的運算平台之外,底層還有一個適合循序式、批次存取的檔案系統(HDFS),當然大家就不會就此滿足。既然 Google 用自家的分散式檔案系統做了一個用來存放結構化資料的 BigTable,為甚麼不也用 Hadoop 的 HDFS 做一個出來呢?

於是,兩年前在兩位 Powerset 工程師(Jim Kellerman 跟 Michael Stack)的號召下,在 Hadoop 的 contrib 計畫中多出了 HBase 這個跟 BigTable 採用類似設計的分散式結構化資料的儲存系統。

簡單的說,HBaseBigTable 一樣,有別於一般資料庫系統用的 row-oriented 儲存方式,這兩個系統都是 column-oriented 的儲存方式。Column-oriented 的好處是每一筆資料可以存放不固定欄位的東西,不像 row-oriented 的存法,增加一個新的欄位需要多花些力氣才能達成。與 BigTable 相同的是 HBase 底層也是使用了分散式的檔案系統 (Hadoop 的 HDFS),並且也將一個資料表拆成很多份,由不同的伺服器負責該部份的存取,藉此達到高效能。

在寫入資料的時候,HBaseBigTable 一樣,都是先寫到記憶體中的 MemCache,並且有 Write-Ahead Log 以防意外發生時可以做復原的動作。每隔一段時間,或者 MemCache 累積到一定程度,HBase 就會把資料寫入檔案系統中。因此,HBase 可以提供相當高速的寫入。讀取的時候,也是先去找 MemCache 後再去找檔案系統,而藉由將一個大大的表拆成很多份的技巧,也提昇了讀取的速度。

HBase 本身跟 Hadoop 一樣用 Java 撰寫,但透過 Thrift 的支援(Thrift 是一套由 Facebook 所開發,提供跨語言做資料交換的平台),你可以用任何 Thrift 有支援的語言,像是PHP/Perl/Ruby/Python 等來存取 HBase

上個月21號在 Rapleaf.com 有舉辦一場 Hadoop 技術研討會, 有幾個重要的 Topic 摘要如下:

  1. The Collector - Multi-Writer Appends into HDFS
    by Bryan Duxbury, Software Engineer at Rapleaf
    http://www.vimeo.com/2084824
  2. Katta - 運行環境中的分散式 lucene 索引
    by Stefan Groshupf, Founder/CTO at 101tec Inc. and Co-Founder at Scale Unlimited Inc.
    http://www.vimeo.com/2085140
  3. MapReduce 應用程式除錯和調教
    by Arun C Murthy, Principal Engineer at Yahoo! and Member of Apache Hadoop PMC
    http://www.vimeo.com/2085477

由於不管是在分散式系統或是平行處理系統上面開發程式, 其除錯遠比開發一般程式來的複雜許多,  這篇 MapReduce 應用程式除錯和調教 對於在已經或是打算在 Hadoop 上開發的人來說都是篇很不錯的參考文件.

國家高速網路與計算中心將於97年11月4~5日邀請 Devaraj Das ( Engineer Manager,Grid Computing Group, Yahoo! Bangalore ) 來台演講, 有興趣的人歡迎直接跟王耀聰先生聯絡 <jazz AT nchc org tw>.

Hadoop 0.18 版特色

|

Hadoop 在 8/22 日 release 了 0.18 版, 這次的 release 總共有 266 個 patches committed , 是有史以來最多的一次, 又其中有 20% 是由非 Yahoo! 的開發者所貢獻的, 也是有史以來比例最高的一次.  這充份顯示了 Hadoop 計畫不論在社群或是成員的參與度上都有大幅的成長, 但也因為這個原因 code base 產生了大量的 blocking bugs, 讓這次 release 在原本 6/4 日 feature freeze 後拖延至現在才完成.

Hadoop 0.18 版這次不管在效能 (performance),延展性 (scalability) 和可靠度 (reliability) 等方面都新增加了不少特性, 其中部分效能方面的改進讓 Hadoop 贏得了2008 年的 Terabyte sort benchmark 比賽. 另外 0.18 版在網格混合測試當中僅需要 0.15 版約 45% 的時間.

以下大略介紹一下 HDFS 和 MapReduce 幾個主要新的特色:

幫 Hadoop HDFS 調整系統資源限制

|
有時候 Map Reduce 的工作跑一跑,會發現 datanode 突然都陣亡,去看 log 會發現很多 Too many open files 的錯誤:

2008-09-11 20:20:22,836 ERROR org.apache.hadoop.dfs.DataNode: 192.168.1.34:50010:DataXceiver: java.io.IOException: Too many open files
        at sun.nio.ch.EPollArrayWrapper.epollCreate(Native Method)
        at sun.nio.ch.EPollArrayWrapper.<init>(EPollArrayWrapper.java:68)
        at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:52)
        at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:18)
        at sun.nio.ch.Util.getTemporarySelector(Util.java:123)
        at sun.nio.ch.SocketAdaptor.connect(SocketAdaptor.java:92)
        at org.apache.hadoop.dfs.DataNode$DataXceiver.writeBlock(DataNode.java:1150)
        at org.apache.hadoop.dfs.DataNode$DataXceiver.run(DataNode.java:994)
        at java.lang.Thread.run(Thread.java:619)

這個發生的原因是同時間很多 client 要去跟 datanode 要東西,因此消耗太多的 file descriptor,那又因為我在用的 Linux 上面預設單一 process 能開的檔案只有 1,024 個,>
於是就造成了這種結果。

修正的方法是去 /etc/security/limits.conf 加上這行:

* - nofile 8192
讓單一 process 能同時開到 8,192 個檔案。改好後重開 datanode 就可以了。

用 "單機" 跟 "PHP" 開發 Hadoop 程式

|
當 hadoop 如火如荼之際, google release 了一個為 hadoop 量身打造的 vm image, 讓developer 可以自由在單機上開發hadoop程式,現在只要按照以下十個步驟,輕鬆學會用php 開發hadoop

1. 下載  vmware  player
http://www.vmware.com/download/player/

2. 下載 hadoop vm img
http://code.google.com/edu/parallel/tools/hadoopvm/index.html

3. 安裝 vmware player 啟動 hadoop vm

4. 使用root 登入
id:root /  password:root

5. 安裝 php
root# apt-get install php5-cli

6. 登出改用 guest 登入
id:guest / password:guest

7. 用 vim 寫兩支php 放到 /home/guest

Mailing list and Hadoop slide

|

經過幾天的 Free Mailing Lists survey, 選了操作介面比較簡單的 FreeLists 來當作 mailing list 的 provider , mailing list 為 hadoop-taiwan@freelists.org , 有關 hadoop 的任何問題, 有興趣加入討論的人可以到 http://www.freelists.org/list/hadoop-taiwan  這邊 subscribe.

 

另外今年四月份的時候, OSDC.TW 邀請了 Yahoo! Grid Computing Group Architect, Vivek Ratan 來台介紹 Hadoop , 演講的內容相當詳盡 , 投影片 Hadoop_OSDC_08.pdf , 供大家取用. 另外這邊要感謝 OpenFoundry 提供網頁空間讓我們可以擺放 slides. 

What is Hadoop ?

|

Hadoop 是 Apache 軟體基金會 旗下的一個計畫,是為了開發一套提供可靠性(reliable),延展性(scalable)以及分散式計算(distributed computing)的開源軟體, 目前包括下列子計畫:

  • Hadoop 核心, 目前的旗艦子計畫, 提供分散式檔案系統 (HDFS) 並支援 MapReduce 分散式計算模式.
  • HBase, 依據 Hadoop 核心打造, 提供具有延展性的分散式資料庫系統.
  • ZooKeeper, 一套高可靠度的協調管理系統, 分散式應用軟體使用 ZooKpeer 來保存,協調重要的共享資料更新.

Hadoop 原本是為了 Nutch , 一個 Apache 軟體基金會旗下的搜尋引擎系統所設計打造的基礎建設 Framework, 之後 Google 相繼發布了 Google File System 和 MapReduce 等 papers, 它們正是 Nutch 計畫所需要的, 因此 Nutch 計畫新增了 HDFS 跟 MapReduce 運算模式的實作.

   hadoop_arch.png

2006 年, Hadoop 之父 Doug Cutting 應 Yahoo! 之邀加入公司,專職從事 Hadoop 計畫的開發工作, 而 Hadoop 本身也從 Ntuch 計畫正式獨立出來, 2008 三月 Hadoop 升格成為 Apache 軟體基金會的頂級計畫(Top Level Project), 而 Yahoo! 目前是 Hadoop 核心計畫和ZooKeeper 計畫的主要貢獻者.

Hadoop 核心已經被證實可在 2000 台機器上執行,  目前的設計目標是朝向 10,000 台機器. 已經有許多不同的公司和組織分別使用 Hadoop 從事研究或是產品開發的工作, 像是 Yahoo! 搜尋引擎的 Webmap 建立, Amazon 的 EC2/S3 服務, 甚至 Google 也使用 Hadoop 和學術單位進行合作計畫等.


Hadoop 是完全的開源軟體, 對 Hadoop 有興趣的人可以參考下列連結:
http://hadoop.apache.org/
http://hadoop.apache.org/core/
http://wiki.apache.org/hadoop
http://developer.yahoo.com/blogs/hadoop/

hadoop-logo.jpg