spark分布式解壓工具
一、目標(biāo)
? spark解壓縮工具,目前支持tar、gz、zip、bz2、7z壓縮格式,默認(rèn)解壓到當(dāng)前路下,也支持自定義的解壓輸出路徑。另外支持多種提交模式,進(jìn)行解壓任務(wù),可通過(guò)自定義配置文件,作為spark任務(wù)的資源設(shè)定
二、詳細(xì)設(shè)計(jì)
2.1 使用hadoop的FileSystem類,對(duì)tos文件的進(jìn)行讀取、查找、寫入等操作
2.2 獲取到tos文件或目錄,對(duì)壓縮文件進(jìn)行解壓,解壓成字節(jié)數(shù)組,以流的方式寫入tos文件系統(tǒng)
2.3 使用maven工具打包,單獨(dú)生成一個(gè)spark配置文件(提交spark作業(yè)時(shí)進(jìn)行資源的分配),每次啟動(dòng)spark job時(shí),會(huì)加載這個(gè)自定義配置文件
2.4 封裝到shell腳本,通過(guò)sparktar命令執(zhí)行解壓
三、操作說(shuō)明
1.提交模式
支持3種spark的提交模式,建議7z解壓用yarn-client|cluster模式提交,主要會(huì)涉及到寫磁盤的流程,避免把單節(jié)點(diǎn)磁盤打滿的風(fēng)險(xiǎn)
tar | zip | bz2 | 7z | |
---|---|---|---|---|
本地local模式 | 支持 | 支持 | 支持 | 支持 |
yarn-client | 支持 | 支持 | 支持 | 支持 |
yarn-cluster | 支持 | 支持 | 支持 | 支持 |
2.壓縮輸出路徑支持2種方式
a)默認(rèn)直接解壓到當(dāng)前路徑,不會(huì)覆蓋原始?jí)嚎s文件;
b)還可以指定解壓輸出路徑
3.操作命令及說(shuō)明
3.1操作命令
目前已在172.24.12.118機(jī)器配置好了,可通過(guò) sparktar 命令來(lái)執(zhí)行解壓操作
sparktar -cluster tos://report/tmp/tar/ tos://report/tmptar/ tmp.produce.properties
3.2命令說(shuō)明
sparktar 提交方式 解壓路徑 [解壓輸出路徑] 配置文件
提交方式, 必選參數(shù),提交可選3種方式: -client, -local, -cluster
解壓路徑: 必選參數(shù),支持輸入路徑和文件絕對(duì)路徑, 比如tos://report/tmp/或tos://report/tmp/xx.gz
輸出路徑: 非必選參數(shù),默認(rèn)解壓到當(dāng)前路徑下
配置文件: 必選參數(shù),約定在/bin/spark-tar/config下創(chuàng)建, 文件格式xxx.produce.properties(后綴名統(tǒng)一寫成produce.properties, xxx前綴自定義寫,最好是見(jiàn)名知意,后面xxx作為spark作業(yè)名稱)
四、操作案例
4.1案例1
yarn-cluster模式,將tos://report/tmp/下的壓縮包,解壓到當(dāng)前路徑
第一步:在/bin/spark-tar/config路徑下編寫配置文件
vim /bin/spark-tar/config/tmp.produce.properties文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-788230.html
# spark.driver內(nèi)存
spark.driver.memory=1g
# spark.driver的核數(shù)
spark.driver.cores=2
# spark.executor的核數(shù),官網(wǎng)推薦4~5個(gè)
spark.executor.cores=4
# spark.executor內(nèi)存,大概1個(gè)yarn節(jié)點(diǎn)總內(nèi)存/1個(gè)yarn節(jié)點(diǎn)的excuter數(shù),具體還需要結(jié)合job的數(shù)據(jù)集以及劃分并行度情況設(shè)定
spark.executor.memory=4g
# executor的個(gè)數(shù)
spark.executor.instances=4
# yarn.executor堆外內(nèi)存
spark.yarn.executor.memoryOverhead=1g
spark代碼已提交到git倉(cāng)庫(kù),訪問(wèn)地址:https://gitee.com/dyhsmile/spark-tar-tools/文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-788230.html
到了這里,關(guān)于spark分布式解壓工具的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!