先在hive中计算,将计算结果保存到hdfs文件,读取到本地使用mysql 的 load data local infile 语句写入到mysql

#!/bin/bash

#BEG :----------------------------- define function-----------

log(){

echo "`date +%Y%m%d-%H%M%S` : $@" >> ${RUNLOG}

}

CheckIfError(){

if [ $? != 0 ];then

#log " Error : $1"

echo " Error : $1" | mail -s "${FILENAME} ${DAY} ${HOUR} fail" spider.zhcl@qq.com

exit -1

fi

}

#END :----------------------------- define function-----------

DAY=${1}

if [ -z "${DAY}" ];then

DAY=`date -d "-1day" +%Y%m%d`

fi

echo ${DAY}

ROOTDIR="/data/dmap/script/mediareport"

FILENAME=$(basename $0)

RUNLOG="${ROOTDIR}/${FILENAME}.runlog"

export HADOOP_HOME=/dmp/hadoop/hadoop-1.0.3

export JAVA_HOME=/usr/java/jdk1.7.0_06

HADOOP=/dmp/hadoop/hadoop-1.0.3/bin/hadoop

HIVE=/dmp/hive/hive-0.9.0/bin/hive

Yesterday=`date -d "-1day ${DAY}" +%Y%m%d`

Tomorrow=`date -d "+1day ${DAY}" +%Y%m%d`

echo ${DAY}

echo ${HOUR}

$HIVE -S -e "insert overwrite directory '/user/dmap/mediareport/adxreq/${DAY}' select day_id,orig_plat_type, f_get_domain(url),count(request_id) from x_s_adx_bidreq where day_id=${DAY} group by day_id,orig_plat_type, f_get_domain(url);"

localPath=/data/dmap/file/mediareport

$HADOOP fs -getmerge /user/dmap/mediareport/adxreq/${DAY} ${localPath}/adxreq_${DAY}.dat

MYSQL="mysql -h xxx -uxxx -pxxx database --local-infile=1 -e "

$MYSQL "truncate media_adxreq_${DAY};"

$MYSQL "LOAD DATA LOCAL INFILE '${localPath}/adxreq_${DAY}.dat' into table media_adxreq_${DAY} FIELDS TERMINATED BY '' (datatime,channel,media, adxreq); "

hive 直接访问mysql_hive 直接插入mysql相关推荐

  1. hive to mysql_Hive And MySQL安装及设置

    安装MySQL服务端 [root@centos local]# rpm -i MySQL-server-5.5.31-2.el6.i686.rpm PLEASE REMEMBER TO SET A P ...

  2. hive安装mysql_Hive安装MySql

    yum安装 1.验证Centos是否安装MySQL $>yum list installed | grep mysql 2.删除MySql $>yum –y remove mysql-li ...

  3. hive 配置mysql_Hive的mysql安装配置

    一.MySQL的安装 Hive的数据,是存在HDFS里的.此外,hive有哪些数据库,每个数据库有哪些表,这样的信息称之为hive的元数据信息. 元数据信息不存在HDFS,而是存在关系型数据库里,hi ...

  4. 解决Docker容器内访问宿主机MySQL数据库服务器的问题

    解决Docker容器内访问宿主机MySQL数据库服务器的问题 参考文章: (1)解决Docker容器内访问宿主机MySQL数据库服务器的问题 (2)https://www.cnblogs.com/ga ...

  5. mycat配置访问oracle_教程 | MySql都会了,确定不学习一下MyCat分片?

    什么是MyCat 官方网站::http://www.mycat.org.cn/ http://www.mycat.io/ db proxy MycatMyCat 架构 MyCat 核心概念Schema ...

  6. 使用sqoop将HIVE中的数据输出带Mysql中

    hive中的数据: mysql中的表: 然后安装sqoop: https://blog.csdn.net/qq_41946557/article/details/102890594 里面有详细步骤: ...

  7. Windows下访问VirtualBox的mysql服务

    由于好长时间没有在windows下使用mysql,现在出现好多选项,而且使用sqlyog连接总是出现1045错误,所以在虚拟机Ubuntu下安装mysql进行访问,但是想用win下面vscode进行开 ...

  8. c 连接mysql数据库查询_C语言实现访问及查询MySQL数据库的方法

    本文实例讲述了C语言实现访问及查询MySQL数据库的方法.分享给大家供大家参考,具体如下: 1.添加头文件路径(MySQL安装路径中的include路径) 2.添加库文件(直接从MySQL安装路径中c ...

  9. nodejs进入mysql数据库_nodejs简单访问及操作mysql数据库的方法示例

    本文实例讲述了nodejs简单访问及操作mysql数据库的方法.分享给大家供大家参考,具体如下: var mysql = require('mysql'); //调用MySQL模块 mysql模块要安 ...

最新文章

  1. 6.2 sql安全性
  2. iOS 10 的一个重要更新-开发 iMessage 的第三方插件
  3. [C++STL]C++实现stack容器适配器
  4. delphi switch语句例子_Java 14 祭出增强版 switch,真香!!
  5. Loguru:Python 日志终极解决方案
  6. Linux启动和退出系统的方法,实验二 Linux的启动与关闭
  7. Essential Grouping高性能的数据分组引擎介绍及下载
  8. dict实现原理 python_5分钟看懂系列:Python 线程池原理及实现
  9. pandas折线图x轴显示不全_python - 为什么在Geopandas中显示折线图时会忽略绘图顺序 - 堆栈内存溢出...
  10. [转]Java 强引用、 软引用、 弱引用、虚引用
  11. php 活动报名,活动报名小程序 - 微信小程版的活动在线报名,支持付费活动发布! – 基于ThinkPHP和Bootstrap的极速后台开发框架...
  12. 打开Internet信息服务及IIS管理器
  13. 省市县行政区划代码sql及源地址
  14. 腾讯鉴黄php源码,“箫剑”变成首席鉴黄师 朱宏嘉唐马儒个人资料
  15. 《Unity资源加密》(Yanlz+Unity+XR+资源加密+立钻哥哥+==)
  16. 美创科技携零信任数据安全,亮相云安全联盟大中华区大会
  17. 《Data-Driven Enhancement of Blurry Retinal Images via GANs》--阅读笔记-MICCAI2019
  18. docker 删除映像_创建自己的Docker映像(技术提示#57)
  19. SQL_Injection_Base_by_Silic读书摘要
  20. 【数据分析师】000-如何学习数据分析

热门文章

  1. Redis(八):Redis的复制(Master/Slave)
  2. http断点续传的原理
  3. yii 操作数据库的三种方法
  4. YII2 rules 规则验证器
  5. C言语教程第四章: 数组(4)
  6. 租车信息系统数据库设计(2)
  7. 6个高级Python技巧
  8. 计算机常用技巧及快捷键
  9. iBaits中,关于insert返回值的问题(注意!!!不必写resultClass= java.lang.Integer,方法的返回值就是int)
  10. 【PL/SQL】匿名块、存储过程、函数、触发器