真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Distcp分布式拷貝

(1)discp原理

目前成都創(chuàng)新互聯(lián)公司已為上千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管、服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計(jì)、包河網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

    DistCp(Distributed Copy)是用于大規(guī)模集群內(nèi)部或者集群之間的高性能拷貝工具,和在linux上執(zhí)行cp,scp實(shí)現(xiàn)效果是一致的,不同的是,cp是將本機(jī)的文件和目錄拷貝到本機(jī)的其它地方,scp則可以將A機(jī)器的文件或者目錄拷貝到B機(jī)器,而Distcp則可以實(shí)現(xiàn)的是A(hdfs)集群的數(shù)據(jù)拷貝到B(hdfs)集群,而分布式使得數(shù)據(jù)拷貝時(shí),可以實(shí)現(xiàn)A級群的DN節(jié)點(diǎn)同時(shí)向B集群的DN節(jié)點(diǎn)發(fā)送數(shù)據(jù),突破了單機(jī)拷貝的網(wǎng)卡速率限制,拷貝效率更高。

    同時(shí)Distcp它使用Map/Reduce任務(wù)實(shí)現(xiàn)文件分發(fā),錯(cuò)誤處理和恢復(fù),以及報(bào)告生成。 它把文件和目錄的列表作為map任務(wù)的輸入,每個(gè)任務(wù)會(huì)完成源列表中部分文件的拷貝。(實(shí)際上Distcp只用到了map,沒用用到reduce)。


(2)使用場景

    1:數(shù)據(jù)異地災(zāi)備。

    2:機(jī)房下線,數(shù)據(jù)遷移。

    3:數(shù)據(jù)準(zhǔn)實(shí)時(shí)同步。

(3)discp優(yōu)勢

    1:支持帶寬限流,可以使用bandwidth參數(shù)對distcp的每個(gè)map任務(wù)限流,同時(shí)控制map并發(fā)數(shù)量即可控制整個(gè)拷貝任務(wù)的帶寬,防止拷貝任務(wù)將帶寬打滿,影響其它業(yè)務(wù)。

    2:支持overwrite(覆蓋寫),update(增量寫),delete(刪除寫)等多種源和目的校驗(yàn)的拷貝方式,大量數(shù)據(jù)的拷貝必然要做到數(shù)據(jù)拷貝過程中的校驗(yàn),來保證源和目的數(shù)據(jù)的一致性。

    

(4)discp命令

  • 命令格式

hadoop distcp \
-Dmapred.jobtracker.maxtasks.per.job=1800000 \   #任務(wù)最大map數(shù)(數(shù)據(jù)分成多map任務(wù))
-Dmapred.job.max.map.running=4000 \              #最大map并發(fā)
-Ddistcp.bandwidth=150000000 \                   #帶寬
-Ddfs.replication=2 \                            #復(fù)制因子,兩副本
-Ddistcp.skip.dir=$skipPath \                    #過濾的目錄(不拷貝的目錄)
-Dmapred.map.max.attempts=9 \                    #每個(gè)task最大嘗試次數(shù)
-Dmapred.fairscheduler.pool=distcp \             #指定任務(wù)運(yùn)行的pool
-pugp \                                          #保留屬性(用戶,組,權(quán)限)
-i \                                             #忽略失敗的task
-skipcrccheck \                                  #忽略CRC校驗(yàn)(防止源,目標(biāo)集群hdfs版本不一致導(dǎo)致任務(wù)失敗。)
hdfs://clusterA:9000/AAA/data  \                 #源地址
hdfs://clusterB:9000/BBB/data                    #目標(biāo)地址

(5)執(zhí)行輸出

[work@hq distcp]$ hadoop distcp \
-Dmapred.jobtracker.maxtasks.per.job=1800000 \
-Dmapred.job.max.map.running=4000 \
-Ddistcp.bandwidth=150000000 \
-Ddfs.replication=2 \
-Dmapred.map.max.attempts=9 \
-Dmapred.fairscheduler.pool=distcp \
-pugp -i -skipcrccheck \
hdfs://clusterA:9000/AAA/data \
hdfs://clusterB:9000/BBB/data

17/06/03 17:06:38 INFO tools.DistCp: srcPaths=[hdfs://clusterA:9000/AAA/data ]
17/06/03 17:06:38 INFO tools.DistCp: destPath=hdfs://clusterB:9000/BBB/data
17/06/03 17:06:39 INFO tools.DistCp: config no skip dir
17/06/03 17:06:40 INFO tools.DistCp: sourcePathsCount=241
17/06/03 17:06:40 INFO tools.DistCp: filesToCopyCount=240
17/06/03 17:06:40 INFO tools.DistCp: bytesToCopyCount=0.0
17/06/03 17:06:40 INFO tools.DistCp: mapTasks: 1
17/06/03 17:06:40 INFO corona.SessionDriver: My serverSocketPort 36822
17/06/03 17:06:40 INFO corona.SessionDriver: My Address 10.160.115.122:36822
17/06/03 17:06:40 INFO corona.SessionDriver: Connecting to cluster manager at jobtracker:8021
17/06/03 17:06:40 INFO corona.SessionDriver: HeartbeatInterval=15000
17/06/03 17:06:40 INFO corona.SessionDriver: Got session ID job_201706031706_267270
17/06/03 17:06:40 INFO tools.DistCp: targetsize=268435456
17/06/03 17:06:40 INFO tools.DistCp: targetfiles=500
17/06/03 17:06:40 INFO corona.SessionDriver: Started session job_201706031706_267270
17/06/03 17:06:45 INFO mapred.JobClient:  map 0% reduce 0%
17/06/03 17:06:59 INFO mapred.JobClient:  map 3% reduce 0%
17/06/03 17:07:01 INFO mapred.JobClient:  map 5% reduce 0%
17/06/03 17:07:05 INFO mapred.JobClient:  map 6% reduce 0%
.....
17/06/03 17:11:15 INFO mapred.JobClient:  map 97% reduce 0%
17/06/03 17:11:17 INFO mapred.JobClient:  map 100% reduce 0%
17/06/03 17:11:25 INFO corona.SessionDriver: Stopping session driver

(6)主要參數(shù)

Hadoop 1版本


distcp [OPTIONS] *

選項(xiàng):

-p [rbugp]             狀態(tài)

                       r:復(fù)制數(shù)

                       b:塊大小

                       u:用戶

                       g:組

                       p:權(quán)限

                       t:修改和訪問時(shí)間

                       -p單獨(dú)相當(dāng)于-prbugpt

-i                     忽略失敗

-basedir      從復(fù)制文件時(shí),使用作為基本目錄

-log          將日志寫入

-m          最大并發(fā)副本數(shù)

-overwrite             覆蓋目的地

-update                如果src大小與dst大小不同,則覆蓋

-skipcrccheck          不要使用CRC檢查來確定src是否是 不同于dest。

-copybychunk           剁碎和復(fù)制的文件

-f       將中的列表用作src列表

-filelimit         將文件的總數(shù)限制為<= n

-filelimitpermap   每個(gè)地圖要復(fù)制的最大文件數(shù)

-sizelimit         將總大小限制為<= n個(gè)字節(jié)

-sizelimitpermap   每個(gè)映射要復(fù)制的最大字節(jié)數(shù)

-delete                刪除dst中存在的文件,但不在src中

-mapredSslConf      映射器任務(wù)的SSL配置文件名

-usefastcopy           使用FastCopy(僅適用于DFS)

注1:如果設(shè)置了-overwrite或-update,則每個(gè)源URI和目標(biāo)URI保持同級一致。

例如:

hadoop distcp -p -update hdfs://A:9000//home/aa  hdfs://B:9000//home/bb

支持的通用選項(xiàng)是

-conf 指定應(yīng)用程序配置文件

-D 給定屬性的使用值

-fs 指定一個(gè)namenode

-jt 指定jobtracker在corona上

-jtold 指定jobtracker在mapreduce上

-files <逗號(hào)分隔的文件列表>指定要復(fù)制到map reduce cluster的逗號(hào)分隔文件

-libjars <逗號(hào)分隔的jars列表> 指定要包含在類路徑中的逗號(hào)分隔的jar文件。

-archives <逗號(hào)分隔的歸檔列表> 指定要在計(jì)算機(jī)上取消歸檔的逗號(hào)分隔的歸檔。


Hadoop 2版本


用法:distcp OPTIONS [source_path ...]

              OPTIONS

 -append                    重新使用目標(biāo)文件中的現(xiàn)有數(shù)據(jù)并追加新的如果可能,給他們的數(shù)據(jù)

 -async                     應(yīng)該是distcp執(zhí)行阻塞

 -atomic                    提交所有更改或無

 -bandwidth           以MB為單位指定每個(gè)map的帶寬

 -delete                    從目標(biāo)中刪除,源文件丟失

 -diff                使用snapshot diff報(bào)告來標(biāo)識(shí)源和目標(biāo)之間的差異

 -f                   需要復(fù)制的文件列表

 -filelimit          (已棄用!)限制復(fù)制到<= n的文件數(shù)

 -i                         在復(fù)制期間忽略故障

 -log                 DFS上的distcp執(zhí)行日志文件夾保存

 -m                   要用于副本的最大并發(fā)map數(shù)

 -mapredSslConf       配置ssl配置文件,用于hftps://

 -overwrite                 選擇無條件覆蓋目標(biāo)文件,即使它們存在。

 -p                   保留源文件狀態(tài)(rbugpcaxt)

                            (復(fù)制,塊大小,用戶,組,權(quán)限,校驗(yàn)和類型,ACL,XATTR,時(shí)間戳)

                            如果-p是指定為no ,然后保留復(fù)制,塊大小,用戶,組,權(quán)限,校驗(yàn)和類型和時(shí)間戳。

                            原始的* xattrs是源和目的地都保留路徑位于/.reserved/raw層次結(jié)構(gòu)中(HDF只要)。原始*      

                            xattrpreservation是獨(dú)立的-p標(biāo)志。請參閱DistCp文檔更多細(xì)節(jié)。

 -sizelimit          (已棄用?。┫拗茝?fù)制到<= n的文件數(shù)字節(jié)

 -skipcrccheck              是否跳過源和源之間的CRC檢查目標(biāo)路徑。

 -strategy            復(fù)制策略使用。默認(rèn)是分工基于文件大小

 -tmp                 要用于原子的中間工作路徑承諾

 -update                    更新目標(biāo),僅復(fù)制missingfiles或目錄


當(dāng)前標(biāo)題:Distcp分布式拷貝
文章路徑:http://weahome.cn/article/gedipd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部