'Hadoop是什麼,能幹什麼,怎麼使用'

"

1、Hadoop是什麼

1.1、小故事版本的解釋

小明接到一個任務:計算一個100M的文本文件中的單詞的個數,這個文本文件有若干行,每行有若干個單詞,每行的單詞與單詞之間都是以空格鍵分開的。對於處理這種100M量級數據的計算任務,小明感覺很輕鬆。他首先把這個100M的文件拷貝到自己的電腦上,然後寫了個計算程序在他的計算機上執行後順利輸出了結果。

後來,小明接到了另外一個任務,計算一個1T(1024G)的文本文件中的單詞的個數。再後來,小明又接到一個任務,計算一個1P(1024T)的文本文件中的單詞的個數……

面對這樣大規模的數據,小明的那一臺計算機已經存儲不下了,也計算不了這樣大的數據文件中到底有多少個單詞了。機智的小明上網百度了一下,他在百度的輸入框中寫下了:大數據存儲和計算怎麼辦?按下回車鍵之後,出現了有關Hadoop的網頁。

看了很多網頁之後,小明總結一句話:Hadoop就是存儲海量數據和分析海量數據的工具。

1.2、稍專業點的解釋

Hadoop是由java語言編寫的,在分佈式服務器集群上存儲海量數據並運行分佈式分析應用的開源框架,其核心部件是HDFS與MapReduce。

HDFS是一個分佈式文件系統:引入存放文件元數據信息的服務器Namenode和實際存放數據的服務器Datanode,對數據進行分佈式儲存和讀取。

MapReduce是一個計算框架:MapReduce的核心思想是把計算任務分配給集群內的服務器裡執行。通過對計算任務的拆分(Map計算/Reduce計算)再根據任務調度器(JobTracker)對任務進行分佈式計算。

1.3、記住下面的話:

Hadoop的框架最核心的設計就是:HDFS和MapReduce。HDFS為海量的數據提供了存儲,則MapReduce為海量的數據提供了計算。

把HDFS理解為一個分佈式的,有冗餘備份的,可以動態擴展的用來存儲大規模數據的大硬盤。

把MapReduce理解成為一個計算引擎,按照MapReduce的規則編寫Map計算/Reduce計算的程序,可以完成計算任務。

2、Hadoop能幹什麼

大數據存儲:分佈式存儲

日誌處理:擅長日誌分析

ETL:數據抽取到oracle、mysql、DB2、mongdb及主流數據庫

機器學習: 比如Apache Mahout項目

搜索引擎:Hadoop + lucene實現

數據挖掘:目前比較流行的廣告推薦,個性化廣告推薦

Hadoop是專為離線和大規模數據分析而設計的,並不適合那種對幾個記錄隨機讀寫的在線事務處理模式。

實際應用:

(1)Flume+Logstash+Kafka+Spark Streaming進行實時日誌處理分析

"

1、Hadoop是什麼

1.1、小故事版本的解釋

小明接到一個任務:計算一個100M的文本文件中的單詞的個數,這個文本文件有若干行,每行有若干個單詞,每行的單詞與單詞之間都是以空格鍵分開的。對於處理這種100M量級數據的計算任務,小明感覺很輕鬆。他首先把這個100M的文件拷貝到自己的電腦上,然後寫了個計算程序在他的計算機上執行後順利輸出了結果。

後來,小明接到了另外一個任務,計算一個1T(1024G)的文本文件中的單詞的個數。再後來,小明又接到一個任務,計算一個1P(1024T)的文本文件中的單詞的個數……

面對這樣大規模的數據,小明的那一臺計算機已經存儲不下了,也計算不了這樣大的數據文件中到底有多少個單詞了。機智的小明上網百度了一下,他在百度的輸入框中寫下了:大數據存儲和計算怎麼辦?按下回車鍵之後,出現了有關Hadoop的網頁。

看了很多網頁之後,小明總結一句話:Hadoop就是存儲海量數據和分析海量數據的工具。

1.2、稍專業點的解釋

Hadoop是由java語言編寫的,在分佈式服務器集群上存儲海量數據並運行分佈式分析應用的開源框架,其核心部件是HDFS與MapReduce。

HDFS是一個分佈式文件系統:引入存放文件元數據信息的服務器Namenode和實際存放數據的服務器Datanode,對數據進行分佈式儲存和讀取。

MapReduce是一個計算框架:MapReduce的核心思想是把計算任務分配給集群內的服務器裡執行。通過對計算任務的拆分(Map計算/Reduce計算)再根據任務調度器(JobTracker)對任務進行分佈式計算。

1.3、記住下面的話:

Hadoop的框架最核心的設計就是:HDFS和MapReduce。HDFS為海量的數據提供了存儲,則MapReduce為海量的數據提供了計算。

把HDFS理解為一個分佈式的,有冗餘備份的,可以動態擴展的用來存儲大規模數據的大硬盤。

把MapReduce理解成為一個計算引擎,按照MapReduce的規則編寫Map計算/Reduce計算的程序,可以完成計算任務。

2、Hadoop能幹什麼

大數據存儲:分佈式存儲

日誌處理:擅長日誌分析

ETL:數據抽取到oracle、mysql、DB2、mongdb及主流數據庫

機器學習: 比如Apache Mahout項目

搜索引擎:Hadoop + lucene實現

數據挖掘:目前比較流行的廣告推薦,個性化廣告推薦

Hadoop是專為離線和大規模數據分析而設計的,並不適合那種對幾個記錄隨機讀寫的在線事務處理模式。

實際應用:

(1)Flume+Logstash+Kafka+Spark Streaming進行實時日誌處理分析

Hadoop是什麼,能幹什麼,怎麼使用

(2)酷狗音樂的大數據平臺

"

1、Hadoop是什麼

1.1、小故事版本的解釋

小明接到一個任務:計算一個100M的文本文件中的單詞的個數,這個文本文件有若干行,每行有若干個單詞,每行的單詞與單詞之間都是以空格鍵分開的。對於處理這種100M量級數據的計算任務,小明感覺很輕鬆。他首先把這個100M的文件拷貝到自己的電腦上,然後寫了個計算程序在他的計算機上執行後順利輸出了結果。

後來,小明接到了另外一個任務,計算一個1T(1024G)的文本文件中的單詞的個數。再後來,小明又接到一個任務,計算一個1P(1024T)的文本文件中的單詞的個數……

面對這樣大規模的數據,小明的那一臺計算機已經存儲不下了,也計算不了這樣大的數據文件中到底有多少個單詞了。機智的小明上網百度了一下,他在百度的輸入框中寫下了:大數據存儲和計算怎麼辦?按下回車鍵之後,出現了有關Hadoop的網頁。

看了很多網頁之後,小明總結一句話:Hadoop就是存儲海量數據和分析海量數據的工具。

1.2、稍專業點的解釋

Hadoop是由java語言編寫的,在分佈式服務器集群上存儲海量數據並運行分佈式分析應用的開源框架,其核心部件是HDFS與MapReduce。

HDFS是一個分佈式文件系統:引入存放文件元數據信息的服務器Namenode和實際存放數據的服務器Datanode,對數據進行分佈式儲存和讀取。

MapReduce是一個計算框架:MapReduce的核心思想是把計算任務分配給集群內的服務器裡執行。通過對計算任務的拆分(Map計算/Reduce計算)再根據任務調度器(JobTracker)對任務進行分佈式計算。

1.3、記住下面的話:

Hadoop的框架最核心的設計就是:HDFS和MapReduce。HDFS為海量的數據提供了存儲,則MapReduce為海量的數據提供了計算。

把HDFS理解為一個分佈式的,有冗餘備份的,可以動態擴展的用來存儲大規模數據的大硬盤。

把MapReduce理解成為一個計算引擎,按照MapReduce的規則編寫Map計算/Reduce計算的程序,可以完成計算任務。

2、Hadoop能幹什麼

大數據存儲:分佈式存儲

日誌處理:擅長日誌分析

ETL:數據抽取到oracle、mysql、DB2、mongdb及主流數據庫

機器學習: 比如Apache Mahout項目

搜索引擎:Hadoop + lucene實現

數據挖掘:目前比較流行的廣告推薦,個性化廣告推薦

Hadoop是專為離線和大規模數據分析而設計的,並不適合那種對幾個記錄隨機讀寫的在線事務處理模式。

實際應用:

(1)Flume+Logstash+Kafka+Spark Streaming進行實時日誌處理分析

Hadoop是什麼,能幹什麼,怎麼使用

(2)酷狗音樂的大數據平臺

Hadoop是什麼,能幹什麼,怎麼使用

3、怎麼使用Hadoop

3.1、Hadoop集群的搭建

無論是在windows上裝幾臺虛擬機玩Hadoop,還是真實的服務器來玩,說簡單點就是把Hadoop的安裝包放在每一臺服務器上,改改配置,啟動就完成了Hadoop集群的搭建。

3.2、上傳文件到Hadoop集群

Hadoop集群搭建好以後,可以通過web頁面查看集群的情況,還可以通過Hadoop命令來上傳文件到hdfs集群,通過Hadoop命令在hdfs集群上建立目錄,通過Hadoop命令刪除集群上的文件等等。

3.3、編寫map/reduce程序

通過集成開發工具(例如eclipse)導入Hadoop相關的jar包,編寫map/reduce程序,將程序打成jar包扔在集群上執行,運行後出計算結果。

"

1、Hadoop是什麼

1.1、小故事版本的解釋

小明接到一個任務:計算一個100M的文本文件中的單詞的個數,這個文本文件有若干行,每行有若干個單詞,每行的單詞與單詞之間都是以空格鍵分開的。對於處理這種100M量級數據的計算任務,小明感覺很輕鬆。他首先把這個100M的文件拷貝到自己的電腦上,然後寫了個計算程序在他的計算機上執行後順利輸出了結果。

後來,小明接到了另外一個任務,計算一個1T(1024G)的文本文件中的單詞的個數。再後來,小明又接到一個任務,計算一個1P(1024T)的文本文件中的單詞的個數……

面對這樣大規模的數據,小明的那一臺計算機已經存儲不下了,也計算不了這樣大的數據文件中到底有多少個單詞了。機智的小明上網百度了一下,他在百度的輸入框中寫下了:大數據存儲和計算怎麼辦?按下回車鍵之後,出現了有關Hadoop的網頁。

看了很多網頁之後,小明總結一句話:Hadoop就是存儲海量數據和分析海量數據的工具。

1.2、稍專業點的解釋

Hadoop是由java語言編寫的,在分佈式服務器集群上存儲海量數據並運行分佈式分析應用的開源框架,其核心部件是HDFS與MapReduce。

HDFS是一個分佈式文件系統:引入存放文件元數據信息的服務器Namenode和實際存放數據的服務器Datanode,對數據進行分佈式儲存和讀取。

MapReduce是一個計算框架:MapReduce的核心思想是把計算任務分配給集群內的服務器裡執行。通過對計算任務的拆分(Map計算/Reduce計算)再根據任務調度器(JobTracker)對任務進行分佈式計算。

1.3、記住下面的話:

Hadoop的框架最核心的設計就是:HDFS和MapReduce。HDFS為海量的數據提供了存儲,則MapReduce為海量的數據提供了計算。

把HDFS理解為一個分佈式的,有冗餘備份的,可以動態擴展的用來存儲大規模數據的大硬盤。

把MapReduce理解成為一個計算引擎,按照MapReduce的規則編寫Map計算/Reduce計算的程序,可以完成計算任務。

2、Hadoop能幹什麼

大數據存儲:分佈式存儲

日誌處理:擅長日誌分析

ETL:數據抽取到oracle、mysql、DB2、mongdb及主流數據庫

機器學習: 比如Apache Mahout項目

搜索引擎:Hadoop + lucene實現

數據挖掘:目前比較流行的廣告推薦,個性化廣告推薦

Hadoop是專為離線和大規模數據分析而設計的,並不適合那種對幾個記錄隨機讀寫的在線事務處理模式。

實際應用:

(1)Flume+Logstash+Kafka+Spark Streaming進行實時日誌處理分析

Hadoop是什麼,能幹什麼,怎麼使用

(2)酷狗音樂的大數據平臺

Hadoop是什麼,能幹什麼,怎麼使用

3、怎麼使用Hadoop

3.1、Hadoop集群的搭建

無論是在windows上裝幾臺虛擬機玩Hadoop,還是真實的服務器來玩,說簡單點就是把Hadoop的安裝包放在每一臺服務器上,改改配置,啟動就完成了Hadoop集群的搭建。

3.2、上傳文件到Hadoop集群

Hadoop集群搭建好以後,可以通過web頁面查看集群的情況,還可以通過Hadoop命令來上傳文件到hdfs集群,通過Hadoop命令在hdfs集群上建立目錄,通過Hadoop命令刪除集群上的文件等等。

3.3、編寫map/reduce程序

通過集成開發工具(例如eclipse)導入Hadoop相關的jar包,編寫map/reduce程序,將程序打成jar包扔在集群上執行,運行後出計算結果。

Hadoop是什麼,能幹什麼,怎麼使用

"

相關推薦

推薦中...