zoukankan      html  css  js  c++  java
  • 脚本put数据到hdfs

    1、vim putdata.sh

      脚本功能:

      每小时的第15分钟把上一小时的数据put到hdfs相应目录

      为了避免大量的小文件,我们把文件夹下的文件cat到一个临时文件里,put成功后删除这个临时文件

    #! /bin/bash
    #当前时间
    nowtime=`date +%Y%m%d%H%M%S`
    echo "当前时间为:$nowtime"
    #当前时间戳
    currentTime=`date +%s`
    echo "当时间戳为:$currentTime"
    #上一小时时间戳
    beforeHourTime=`expr $currentTime - 3600`
    #上一小时时间
    beforeHour=`date -d @$beforeHourTime +%Y%m%d%H%M%S`
    echo "上一小时时间为:$beforeHour"
    #截取
    timeDir=${beforeHour:0:10}
    echo "timeDir为:$timeDir"
    #定义一个临时文件名
    tmpFile=$timeDir"_tmp.ok"
    #创建这个临时文件
    #把/home/hadoop/testData/$timeDir/*的数据都cat到tmpFile文件里
    cat /home/hadoop/testData/$timeDir/* >> /home/hadoop/testData/$tmpFile
    #在hdfs上创建目录
    hdfs dfs -mkdir -p /testData/$timeDir
    #把数据put到$timeDir目录下
    hdfs dfs -put /home/hadoop/testData/$tmpFile /testData/$timeDir
    #删除这个临时文件
    rm -f /home/hadoop/testData/$tmpFile

     定时执行这个脚本:每小时的第15分钟执行这个脚本
    15 * * * * sh -xb /home/hadoop/shellScript/putdata.sh 2>&1 >> /home/hadoop/a.log

  • 相关阅读:
    Android文件操作工具类(转)
    android中的开机自启动
    Android中调用系统所装的软件打开文件(转)
    Android TextView 阴影效果(投影)
    Smart SVN的使用
    iOS 网络开发
    iOS开发XML解析
    iOS infoq资料架构设计漫谈
    iOS 音频视频制作
    iOS 蒲公英第三方打包平台
  • 原文地址:https://www.cnblogs.com/kwzblog/p/7490030.html
Copyright © 2011-2022 走看看