Mapreduce分布式并行編程
1.什么是并行計(jì)算
傳統(tǒng)并行計(jì)算:共享同一個(gè)數(shù)據(jù),通過(guò)鎖來(lái)控制數(shù)據(jù)的讀寫(xiě),難度大,容易導(dǎo)致死鎖,拓展性差。但是是實(shí)時(shí)的,細(xì)顆粒度計(jì)算,計(jì)算密集型
Mapreduce:對(duì)機(jī)器的要求低,拓展性難,便宜,拓展性強(qiáng),批處理場(chǎng)景,非實(shí)時(shí),數(shù)據(jù)密集型(傻大)
map:分配工作任務(wù)給不同的人,并讓其完成工作(工作相互獨(dú)立,不互相為上下環(huán)節(jié))
reduce:把不同的結(jié)果集合并 再加上分布式
2.現(xiàn)在mapreduce能做什么?
map:映射
1.如小寫(xiě)字母變成大寫(xiě)字母 map
2.把年齡小于16歲的都去掉 map
3.把美元變成人民幣 y=x∗6.3y=x * 6.3y=x∗6.3 map
4.地址庫(kù)的一個(gè)翻譯:省市縣 map
5.(只要是一些處理數(shù)據(jù)相關(guān)的,都應(yīng)當(dāng)是在map上)
reduce:做比較,工作整合,上下游
1.統(tǒng)計(jì)年薪最高的人 (一個(gè)組)key
2.按照男女計(jì)算平均年齡 (倆個(gè)組)key
3.排序 reduce
有些操作放在map、reduce里面都可以
a-------->a----->A
map--------- reduce ×
前提:盡量要減少數(shù)據(jù)的流動(dòng),reduce階段數(shù)據(jù)越少越好,能在map做就在map做掉
數(shù)據(jù)SQL:
Select name ,age,gender from people where id =3
1.project(投射)map完成
Select name ,age,gender
2.filter(過(guò)濾)map完成
id=3
3.key(匯集)
如:Select avg(age),gender from peoplemap:age,gender ---project
key:gender(F,M) //分為man和femalereduce:按照key進(jìn)行匯集 F(25,38,23),M(45,23)
reduce:avg
如:Select max(age),gender from people這里和上面差不多,但是就沒(méi)有key了放在同一個(gè)地方
oss和hive的區(qū)別?
在文件系統(tǒng)上
實(shí)驗(yàn)部分:
1. 搭建各類(lèi)環(huán)境
為了模擬真實(shí)情況,我這里搭建了分布式的hadoop集群,分別有三臺(tái)機(jī)器。一臺(tái)做master,一臺(tái)做slave。

2. 搭建、配置zookeeper

3. 啟動(dòng)zookeeper
/usr/zookeeper/zookeeper-3.4.10/bin/zkServer.sh start

4. 安裝配置java

5. 主從節(jié)點(diǎn)格式化

6. 啟動(dòng)集群
/usr/hadoop/hadoop-2.7.3/sbin/start-all.sh

7. 安裝Scala

8. 啟動(dòng)spark集群
/usr/spark/spark-2.4.0-bin-hadoop2.7/sbin/start-all.sh

9. jps查看已經(jīng)啟動(dòng)的

以上就是Mapreduce分布式并行編程的詳細(xì)內(nèi)容,更多關(guān)于Mapreduce分布式的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
POI通用導(dǎo)出Excel(.xls,.xlsx)的方法
這篇文章主要介紹了POI通用導(dǎo)出Excel(.xls,.xlsx)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
Java并發(fā)之synchronized實(shí)現(xiàn)原理深入理解
這篇文章主要介紹了Java中synchronized實(shí)現(xiàn)原理詳解,涉及synchronized實(shí)現(xiàn)同步的基礎(chǔ),Java對(duì)象頭,Monitor,Mark Word,鎖優(yōu)化,自旋鎖等相關(guān)內(nèi)容,具有一定借鑒價(jià)值,需要的朋友可以參考下2021-08-08
Java中的CountDownLatch同步工具類(lèi)使用解析
這篇文章主要介紹了Java中的CountDownLatch使用解析,CountDownLatch初始化的時(shí)候必須指定一個(gè)count,await方法會(huì)一直阻塞直到調(diào)用countdown方法,count為0,當(dāng)count為0時(shí),所有的等待線程都會(huì)被釋放,需要的朋友可以參考下2023-12-12
Java?SSM實(shí)現(xiàn)前后端協(xié)議聯(lián)調(diào)詳解下篇
首先我們已經(jīng)知道,在現(xiàn)在流行的“前后端完全分離”架構(gòu)中,前后端聯(lián)調(diào)是一個(gè)不可能避免的問(wèn)題,這篇文章主要介紹了Java?SSM實(shí)現(xiàn)前后端協(xié)議聯(lián)調(diào)過(guò)程2022-08-08
spring使用RedisTemplate操作Redis數(shù)據(jù)庫(kù)
這篇文章主要介紹了spring使用RedisTemplate操作Redis數(shù)據(jù)庫(kù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
springboot + mybatis-plus實(shí)現(xiàn)多表聯(lián)合查詢(xún)功能(注解方式)
這篇文章主要介紹了springboot + mybatis-plus實(shí)現(xiàn)多表聯(lián)合查詢(xún)功能,是最簡(jiǎn)單的一種注解方式,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09
java.net.UnknownHostException異常的一般原因及解決步驟
關(guān)于java.net.UnknownHostException大家也許都比較熟悉,這篇文章主要給大家介紹了關(guān)于java.net.UnknownHostException異常的一般原因及解決步驟,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-02-02

