一、大數(shù)據(jù)
大數(shù)據(jù):解決海量數(shù)據(jù)問題的技術(shù)。大數(shù)據(jù)由巨型數(shù)據(jù)集組成,把數(shù)據(jù)集合并進(jìn)行分析可得出許多額外的信息和數(shù)據(jù)關(guān)系性。
大數(shù)據(jù)是指無法在一定時(shí)間內(nèi)用常規(guī)軟件工具對(duì)其內(nèi)容進(jìn)行抓取、管理和處理的數(shù)據(jù)集合。
大數(shù)據(jù)技術(shù)是指從各種各樣類型的數(shù)據(jù)中,快速獲得有價(jià)值信息的能力,適用于大數(shù)據(jù)的技術(shù),包括大數(shù)據(jù)技術(shù)包括大規(guī)模并行處理數(shù)據(jù)庫,數(shù)據(jù)挖掘電網(wǎng),分布式文件系統(tǒng),分布式數(shù)據(jù)庫,云計(jì)算平臺(tái),互聯(lián)網(wǎng)和可擴(kuò)展的存儲(chǔ)系統(tǒng)。
大數(shù)據(jù)的特性:
大體量:可從數(shù)百TB到數(shù)十?dāng)?shù)百PB、甚至EB的規(guī)模
多樣性:大數(shù)據(jù)包括各種形式的形態(tài)的數(shù)據(jù)
時(shí)效性:需要在一定的時(shí)間限度下得到及時(shí)的處理
準(zhǔn)確性:處理的結(jié)果要保證一定的準(zhǔn)確性
大價(jià)值:大數(shù)據(jù)包含很多深度的價(jià)值,大數(shù)據(jù)分析挖掘和利用將帶來巨大的商業(yè)價(jià)值
二、Hadoop
hadoop是一種分析和處理海量數(shù)據(jù)的軟件平臺(tái),是一款開源軟件,使用Java開發(fā),可以提供一個(gè)分布式基礎(chǔ)架構(gòu)
hadoop特點(diǎn):高可靠性、高擴(kuò)展性、高效性、高容錯(cuò)性、低成本
hadoop常用組件:
-HDFS(Hadoop分布式文件系統(tǒng))
-Mapreduce(分布式計(jì)算框架)
-Zookeeper(分布式協(xié)作服務(wù))
-Hbase(分布式列存數(shù)據(jù)庫)
-Hive(基于Hadoop的數(shù)據(jù)倉庫)
-Sqoop(數(shù)據(jù)同步工具)
-Pig(基于Hadoop的數(shù)據(jù)流系統(tǒng))
-Mahout(數(shù)據(jù)挖掘算法庫)
-Flume(日志收集工具)
hadoop核心組件:
-HDFS:分布式文件系統(tǒng)
-Yarn:集群資源管理系統(tǒng)
-MapReduce:分布式計(jì)算框架
HDFS角色及概念
-NameNode:Master節(jié)點(diǎn),管理HDFS的名稱空間和數(shù)據(jù)塊映射信息,配置副本策略,處理所有客戶端請(qǐng)求。
-Secondary NameNode:定期合幵 fsimage 和fsedits,推送給NameNode,緊急情況下,可輔助恢復(fù)NameNode
-DataNode:數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),存儲(chǔ)實(shí)際的數(shù)據(jù),匯報(bào)存儲(chǔ)信息給NameNode。
-Client:切分文件,訪問HDFS,與NameNode交互,獲取文件位置信息,與DataNode交互,讀取和寫入數(shù)據(jù)。
Hadoop的部署模式有三種:
-單機(jī)
-偽分布式(所有角色裝一臺(tái)機(jī)器上)
-完全分布式(不同角色裝不同機(jī)器)
三、單機(jī)模式:
1.獲取軟件
http://hadoop.apache.org
下載:hadoop-2.7.6.tar.gz
解壓:tar -xf hadoop-2.7.6.tar.gz
安裝:mv hadoop-2.7.6
2.安裝java環(huán)境,jps工具
yum -y install java-1.8.0-openjdk
yum -y install java-1.8.0-openjdk-devel
3.設(shè)置環(huán)境變量
vim /usr/local/hadoop/etc/hadoop/hadoop-env.sh
export JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre"
export HADOOP_CONF_DIR="/usr/local/hadoop/etc/hadoop"
分析單詞出現(xiàn)的次數(shù)
./bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount oo xx
四、完全分布式:
-分布式文件系統(tǒng):是指文件系統(tǒng)管理的物理存儲(chǔ)資源不一定直接連接在本地節(jié)點(diǎn)上,而是通過計(jì)算機(jī)網(wǎng)絡(luò)節(jié)點(diǎn)相連,分布式文件系統(tǒng)的設(shè)計(jì)基于客戶機(jī)/服務(wù)器模式;分布式文件系統(tǒng)可以有效解決數(shù)據(jù)的存儲(chǔ)和管理難題,將固定于某個(gè)地點(diǎn)的某個(gè)文件系統(tǒng),擴(kuò)展到任意多個(gè)地點(diǎn)/多個(gè)文件系統(tǒng),眾多的節(jié)點(diǎn)組成一個(gè)文件系統(tǒng)網(wǎng)絡(luò),每個(gè)節(jié)點(diǎn)可以分布在不同的地點(diǎn),通過網(wǎng)絡(luò)進(jìn)行節(jié)點(diǎn)間的通信和數(shù)據(jù)傳輸。
集群組建條件:
配置文件格式
配置文件參考網(wǎng)址http://hadoop.apache.org
cd /usr/local/hadoop/etc/hadoop
1.配置環(huán)境變量文件hadoop-env.sh(參見三、3)
2.核心配置文件core-site.xml
vim core-site.xml
在所有主機(jī)上創(chuàng)建/var/hadoop
2.完全分布式配置hdfs-site.xml
vim hdfs-site.xml
3.配置slaves
vim slaves
node01
node02
node03
4.同步配置到所有主機(jī)
5.格式化 namenode (nn01上操作)
./bin/hdfs namenode -format
6.啟動(dòng)集群 (nn01上操作)
./sbin/start-dfs.sh
停止集群可以使用 ./sbin/stop-dfs.sh
7.驗(yàn)證角色 jps (所有主機(jī)操作)
8.驗(yàn)證集群是否組建成功 (nn01上操作)
./bin/hdfs dfsadmin -report
服務(wù)啟動(dòng)日志路徑 /usr/local/hadoop/logs
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。