스크립트 예제.
각각의 반복문에 대해서 csv파일을 서버1에서 서버2로 복사하고,
csv파일의 사이즈를 측정하여 특정 경로에 쓰는 배시 쉘 스크립트
#!/bin/bash -x export HADOOP_USER_NAME=하둡 유저 네임. # 파일사이즈 체크용 파일. 이미 있으면 매번 지우고 새로만듬.. outpath=파일 경로 hdfs dfs -test -e ${outpath} # 파일이 존재하면 if [ $? == 0 ] then hadoop fs -rm ${outpath} #파일을 지움. fi # 하둡서버1에서 하둡서버2로 distcp하는 코드 for site in 반복1 반복2 반복3 반복4 do r=${site}_r.csv t=${site}_t.csv for kind in ${r} ${t} do hadoop distcp -m 3 -bandwidth 25 -pb -i -delete -update 경로1${kind} 경로2${kind} # 각각 csv를 batch-pricing으로 쏨. each=`hadoop fs -du -s 파일경로${kind} | awk '{s+=$1} END {printf "%.3fGB\n", s/1000000000}'` echo "${kind}=${each}" | hdfs dfs -appendToFile - ${outpath} done done
'data engineering' 카테고리의 다른 글
스파크 최적화 삽질 관련 2. (0) | 2017.07.09 |
---|---|
스파크 최적화 삽질 관련 1. (0) | 2017.07.09 |
hue pyspark에서 외부 python 모듈 추가하는 방법. (1) | 2017.07.02 |
hadoop shell 관련. (0) | 2017.06.25 |
aws 개발 관련 기본, 설정. (0) | 2017.06.24 |