hadoop常用技巧

hadoop输入多个文件时获取输入文件名,目的是可以对多个输入文件进行区分

filepath = os.environ["map_input_file"]
filename = os.path.split(filepath)[-1]

hadoop多路输出

hadoop touchz命令:创建一个空文件

  • hadoop fs -touchz xx.done[check文件完成小技巧]

hadoop text命令:将源文件输出为文本格式

  • hadoop fs -text

hadoop grep命令,grep on Hadoop

   hadoop jar hadoop-streaming-1.2.1.jar \
    -D mapreduce.job.name="grep" \
    -D stream.non.zero.exit.is.failure=false \
    -mapper "grep $1" \
    -numReduceTasks 0 \
    -input /INPUT \
    -output /OUTPUT

hadoop动态修改任务优先级

  • hadoop job -set-priority job_name HIGH
  • hadoop job -set-reduce-capacity job 1000

hadoop数据去重的例子

hadoop join的方法【待实现】

hadoop不同集群数据cp

  • hadoop distcp -Dfs.default.name=xxx -Dhadoop.job.ugi=xxx -D mapred.job.queue.name=xxx -D mapred.job.tracker=xxx -D dfs.replication=3 -D mapred.job.map.capacity=3000 -D mapred.job.priority=VERY_HIGH -D mapreduce.job.priority=VERY_HIGH -su xxx -du xxx -m 2000 file1 file2
  • https://www.jianshu.com/p/9de01cedc73b
posted @ 2020-04-03 23:30  baishengguan  阅读(313)  评论(0编辑  收藏  举报