hadoop 数据抽取
#!/bin/bash if [ ! -z $2 ]; then
start_time=$1
end_time=$2
else
starttime=`date +%Y%m%d%H%M -d '-15 min'`
#开始时间
startday=${starttime:0:10}
startmi=`expr ${starttime:10:2} / 15 \* 15`
if [ $startmi != 0 ];then
start_time=$startday$startmi
else
start_time=$startday"00"
fi
#结束时间
endtime=`date +%Y%m%d%H%M`
endday=${endtime:0:10}
endmi=`expr ${endtime:10:2} / 15 \* 15`
if [ $endmi != 0 ];then
end_time=$endday$endmi
else
end_time=$endday"00"
fi fi
echo "数据时间为: $start_time--$end_time"
#创建目录
hadoop fs -mkdir cache/O_RE_ST_XDR_PS_GN_HTTP/$start_time
#上传数据时间段数据
for file in `ls /opt7/ftp/PS_Gn_HTTP_Event/${start_time:0:4}-${start_time:4:2}-${start_time:6:2}/*${start_time:0:10}*.CHK`
do
#351_TM07_PSGnHTTPEvent201410021235_3720202.CHK
#351_TM07_PSGnHTTPEvent201410021235_3720202.AVL
basefile=`basename $file`
date=${basefile:22:12}
if [ $date -ge $start_time ] && [ $date -lt $end_time ];then
avlfile=${file/%CHK/AVL}
echo $avlfile
cp $avlfile /opt8/gz_data_temp/http/
#hadoop fs -put $avlfile cache/O_RE_ST_XDR_PS_GN_HTTP/${start_time}/
fi
done
#cat /opt8/gz_data_temp/http/*_*.AVL>/opt8/gz_data_temp/http/$start_time.AVL
#split -b 512m /opt8/gz_data_temp/http/$start_time.AVL /opt8/gz_data_temp/http/$start_time.AVL.
#echo `ls /opt8/gz_data_temp/http/$start_time.AVL`
#rm -f /opt8/gz_data_temp/http/*.AVL
`hadoop fs -put /opt8/gz_data_temp/http/*.AVL cache/O_RE_ST_XDR_PS_GN_HTTP/${start_time}/`
rm -f /opt8/gz_data_temp/http/*.AVL
echo "oozie--job-http-start!"
cd /home/boco/program
echo `java -cp .:../oozie/libserver/* com.boco.BSSystem.schedule.OozieRunner job_ods_a_xdr_ps_gn_http ${start_time}`
hadoop 数据抽取的更多相关文章
- 利用haohedi ETL将数据库中的数据抽取到hadoop Hive中
采用HIVE自带的apache 的JDBC驱动导入数据基本上只能采用Load data命令将文本文件导入,采用INSERT ... VALUES的方式插入速度极其慢,插入一条需要几十秒钟,基本上不可用 ...
- HR数据抽取:通过 Read Master Data 转换规则读取时间相关主属性数据
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 《BI项目笔记》增量ETL数据抽取的策略及方法
增量抽取 增量抽取只抽取自上次抽取以来数据库中要抽取的表中新增或修改的数据.在ETL使用过程中.增量抽取较全量抽取应用更广.如何捕获变化的数据是增量抽取的关键.对捕获方法一般有两点要求:准确性,能够将 ...
- hadoop数据流转过程分析
hadoop:数据流转图(基于hadoop 0.18.3):通过一个最简单的例子来说明hadoop中的数据流转. hadoop:数据流转图(基于hadoop 0.18.3): 这里使用一个例子说明ha ...
- hadoop数据[Hadoop] 实际应用场景之 - 阿里
上班之余抽点时间出来写写博文,希望对新接触的朋友有帮助.明天在这里和大家一起学习一下hadoop数据 Hadoop在淘宝和支付宝的应用从09年开始,用于对海量数据的离线处置,例如对日志的分析,也涉及内 ...
- 关系数据库数据与hadoop数据进行转换的工具 - Sqoop
Sqoop 本文所使用的Sqoop版本为1.4.6 1.官网 http://sqoop.apache.org 2.作用 A:可以把hadoop数据导入到关系数据库里面(e.g. Hive -> ...
- 数据抽取 CDC
什么是数据抽取 数据抽取是指从源数据源系统抽取目的数据源系统需要的数据.实际应用中,数据源较多采用的是关系数据库. [编辑] 数据抽取的方式 (一) 全量抽取 全量抽取类似于数据迁移或数据复制,它将数 ...
- Kettle数据抽取解决方案
一. Kettle介绍 1. Kettle简介 ETL即数据抽取(Extract).转换(Transform).装载(Load)的过程.Kettle的中文翻译为水壶.Kettle以元数据驱动的方式提供 ...
- BI项目中的ETL设计详解(数据抽取、清洗与转换 )(转载)
原文:http://www.cnblogs.com/reportmis/p/5939732.html ETL是BI项目最重要的一个环节,通常情况下ETL会花掉整个项目的1/3的时间,ETL设计的好坏直 ...
随机推荐
- 数据集成工具Teiid Designer的环境搭建
由于实验室项目要求的关系,看了些数据汇聚工具 Teiid 的相关知识.这里总结下 Teiid 的可视化配置工具 Teiid Designer 的部署过程. 背景知识 数据集成是把不同来源.格式.特点性 ...
- Acdreamoj1116(Gao the string!)弦hash+二分法+矩阵高速功率
Problem Description give you a string, please output the result of the following function mod 100000 ...
- mongose TypeError: Cannot read property 'findOne' of undefined
最近在node的一个项目中,需要在model的一个数据表中写一个钩子函数去调用另外一个文件中的方法,一开始我采用了将此方法放入到global中,直接从global.meteod这样去获取.后来我又尝试 ...
- Massively parallel supercomputer
A novel massively parallel supercomputer of hundreds of teraOPS-scale includes node architectures ba ...
- 矩阵微分(matrix derivatives)
关于矩阵求导,得到的导数则是矩阵形式:关于矢量求导,得到的导数则是矢量形式:关于标量求导,得到的仍是标量形式.也即关于谁求导,得到的导数形式便和谁的维度信息一致. fx = f(x) grad = n ...
- QComboBox实现复选功能(三种方法:嵌套QListWidget, 设置QStandardItemModel, 设置Delegate)
今天介绍一下一个小东西 — 如何让QComboBox实现复选功能? 需求: 下拉列表有复选功能 不可编辑 显示所有选中项 关于QComboBox的复选功能有几种方案: QStandardIte ...
- PHP中遍历关联数组的方法
下面介绍PHP中遍历关联数组的三种方法:foreach <?php $sports = array( 'football' => 'good', 'swimming' => 'ver ...
- GameBuilder见缝插针游戏开发系列(AA)
今天推出了一款游戏叫<AA>.在最近IOS只是弹出一个游戏.非常心脏的孩子,但有很多乐趣.今天,我们谈论它tangide(GameBuilderV2.0)用控件UICanvas实现它. 在 ...
- 大班模型行为PK(总结)
行为类模式包括责任链模式.命令模式.解释器模式.迭代模式.中介模式.备忘录模式.观察者模式.State模式.策略模式.模板方法.Visitor模式,我去,许多.. .主要有以下挑几个easy混乱和控制 ...
- OpenGL(十六) 鼠标、键盘交互响应事件
OpenGL中通过鼠标和键盘跟程序交互的实现需要实现注册鼠标和键盘响应事件,在一定条件下,该事件被触发,事件里的程序被执行,达到交互的目的. 通过glutMouseFunc(&OnMouse) ...