nutch = Hadoop + Lucene + 網路爬蟲(內容屬於轉載)
阿新 • • 發佈:2019-02-10
原文連結: http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop1/index.html
Hadoop 是一個開源的可運行於大規模叢集上的分散式並行程式設計框架,由於分散式儲存對於分散式程式設計來說是必不可少的,這個框架中還包含了一個分散式檔案系統 HDFS( Hadoop Distributed File System )。也許到目前為止,Hadoop 還不是那麼廣為人知,其最新的版本號也僅僅是 0.16,距離 1.0 似乎都還有很長的一段距離,但提及 Hadoop 一脈相承的另外兩個開源專案 Nutch 和 Lucene ( 三者的創始人都是 Doug Cutting ),那絕對是大名鼎鼎。Lucene 是一個用 Java 開發的開源高效能全文檢索工具包,它不是一個完整的應用程式,而是一套簡單易用的 API 。在全世界範圍內,已有無數的軟體系統,Web 網站基於 Lucene 實現了全文檢索功能,後來 Doug Cutting 又開創了第一個開源的 Web 搜尋引擎(http://www.nutch.org) Nutch, 它在 Lucene 的基礎上增加了網路爬蟲和一些和 Web 相關的功能,一些解析各類文件格式的外掛等,此外,Nutch 中還包含了一個分散式檔案系統用於儲存資料。從 Nutch 0.8.0 版本之後,Doug Cutting 把 Nutch 中的分散式檔案系統以及實現 MapReduce 演算法的程式碼獨立出來形成了一個新的開源項 Hadoop。Nutch 也演化為基於 Lucene 全文檢索以及 Hadoop 分散式計算平臺的一個開源搜尋引擎。
基於 Hadoop,你可以輕鬆地編寫可處理海量資料的分散式並行程式,並將其運行於由成百上千個結點組成的大規模計算機叢集上。從目前的情況來看,Hadoop 註定會有一個輝煌的未來:"雲端計算"是目前灸手可熱的技術名詞,全球各大 IT 公司都在投資和推廣這種新一代的計算模式,而 Hadoop 又被其中幾家主要的公司用作其"雲端計算"環境中的重要基礎軟體,如:雅虎正在藉助 Hadoop 開源平臺的力量對抗 Google, 除了資助 Hadoop 開發團隊外,還在開發基於 Hadoop 的開源專案 Pig, 這是一個專注於海量資料集分析的分散式計算程式。Amazon 公司基於 Hadoop 推出了 Amazon S3 ( Amazon Simple Storage Service ),提供可靠,快速,可擴充套件的網路儲存服務,以及一個商用的雲端計算平臺 Amazon EC2 ( Amazon Elastic Compute Cloud )。在 IBM 公司的雲端計算專案--"藍雲計劃"中,Hadoop 也是其中重要的基礎軟體。Google 正在跟IBM合作,共同推廣基於 Hadoop 的雲端計算。
Hadoop 是一個開源的可運行於大規模叢集上的分散式並行程式設計框架,由於分散式儲存對於分散式程式設計來說是必不可少的,這個框架中還包含了一個分散式檔案系統 HDFS( Hadoop Distributed File System )。也許到目前為止,Hadoop 還不是那麼廣為人知,其最新的版本號也僅僅是 0.16,距離 1.0 似乎都還有很長的一段距離,但提及 Hadoop 一脈相承的另外兩個開源專案 Nutch 和 Lucene ( 三者的創始人都是 Doug Cutting ),那絕對是大名鼎鼎。Lucene 是一個用 Java 開發的開源高效能全文檢索工具包,它不是一個完整的應用程式,而是一套簡單易用的 API 。在全世界範圍內,已有無數的軟體系統,Web 網站基於 Lucene 實現了全文檢索功能,後來 Doug Cutting 又開創了第一個開源的 Web 搜尋引擎(http://www.nutch.org) Nutch, 它在 Lucene 的基礎上增加了網路爬蟲和一些和 Web 相關的功能,一些解析各類文件格式的外掛等,此外,Nutch 中還包含了一個分散式檔案系統用於儲存資料。從 Nutch 0.8.0 版本之後,Doug Cutting 把 Nutch 中的分散式檔案系統以及實現 MapReduce 演算法的程式碼獨立出來形成了一個新的開源項 Hadoop。Nutch 也演化為基於 Lucene 全文檢索以及 Hadoop 分散式計算平臺的一個開源搜尋引擎。
基於 Hadoop,你可以輕鬆地編寫可處理海量資料的分散式並行程式,並將其運行於由成百上千個結點組成的大規模計算機叢集上。從目前的情況來看,Hadoop 註定會有一個輝煌的未來:"雲端計算"是目前灸手可熱的技術名詞,全球各大 IT 公司都在投資和推廣這種新一代的計算模式,而 Hadoop 又被其中幾家主要的公司用作其"雲端計算"環境中的重要基礎軟體,如:雅虎正在藉助 Hadoop 開源平臺的力量對抗 Google, 除了資助 Hadoop 開發團隊外,還在開發基於 Hadoop 的開源專案 Pig, 這是一個專注於海量資料集分析的分散式計算程式。Amazon 公司基於 Hadoop 推出了 Amazon S3 ( Amazon Simple Storage Service ),提供可靠,快速,可擴充套件的網路儲存服務,以及一個商用的雲端計算平臺 Amazon EC2 ( Amazon Elastic Compute Cloud )。在 IBM 公司的雲端計算專案--"藍雲計劃"中,Hadoop 也是其中重要的基礎軟體。Google 正在跟IBM合作,共同推廣基於 Hadoop 的雲端計算。