shell中循环调用hive sql 脚本的方法
脚本tt.sh的内容如下:
#!/bin/bash
params=$1
for param in $params
do
echo $param
done
运行方式为:sh tt.sh "1 2 3 4 5"
输出为:
1
2
3
4
5
所以参考上面的命令,可以把hql的脚本写为如下方式,就可以循环执行sql:
功能:查找字符串 comments 中的param第一次出现的位置 ,返回的是位置数字
#!/bin/bash
params=$1
for param in $params
do
hive -e "insert overwrite local directory '/tmp/$param'
row format delimited fields terminated by '\t'
select locate('$param',comments) as position from tb_a;"
done
功能:查找评论中出现关键字的内容,没有关键词的内容过滤掉
#!/bin/bash
params=$1
for param in $params
do
hive -e "insert overwrite local directory '/tmp/$param'
row format delimited fields terminated by '\t'
select position from
(select locate('$param',comments) as position from tb_a where position != '0') a
where a.position !='0' ;"
done
以上这篇shell中循环调用hive sql 脚本的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
时间: 2018-06-18
如下所示: #!/usr/bin/bash HADOOP_HOME="/opt/module/cdh-5.3.6-ha/hadoop-2.5.0-cdh5.3.6" HIVE_HOME='/opt/module/cdh-5.3.6-ha/hive-0.13.1-cdh5.3.6' ####### execute hive ###### sql=$(cat <
本文研究的主要问题是python语言导出hive数据表的schema,分享了实现代码,具体如下. 为了避免运营提出无穷无尽的查询需求,我们决定将有查询价值的数据从mysql导入hive中,让他们使用HUE这个开源工具进行查询.想必他们对表结构不甚了解,还需要为之提供一个表结构说明,于是编写了一个脚本,从hive数据库中将每张表的字段即类型查询出来,代码如下: #coding=utf-8 import pyhs2 from xlwt import * hiveconn = pyhs2.connec
1.test.sh脚本内容如下: #!/bin/bash #CURR_DATE=`date +"%Y-%m-%d %H:%M:%S"`------>不能使用 v_sql="insert into origin_ennenergy_energytrade.test2 values('"$(date +"%Y-%m-%d %H:%M:%S")"','"Y"')" echo $v_sql #insert i
本文为大家分享了mysql 5.7 zip archive版本安装教程,供大家参考,具体内容如下 1. 从官网下载zip archive版本:官网地址 2. 解压缩至相应目录,并配置环境变量(将*\bin添加进path中): 3. (重要)在根目录新建my.ini文件,写入以下内容: [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] # 设置3306端口 port = 3306 # 设置mysql的安装目录 basedi
博主做过比较多项目的archive脚本编写,对于这种删除数据的脚本开发,肯定是一开始的话用最简单的一个delete语句,然后由于部分表数据量比较大啊,索引比较多啊,会发现删除数据很慢而且影响系统的正常使用.然后就对delete语句进行按均匀数据量分批delete的改写,这样的话,原来的删除一个表用一个语句,就可能变成几十行,如果archive的表有十几个甚至几十个,那我们的脚本篇幅就非常大了,增加了开发和维护的成本,不利于经验比较少的新入职同事去开发archive脚本,也容易把注意力分散到所谓分
实例代码: public function downLoad($dataUrl,$saveName) { $datalist = [ ROOT_PATH.'/public/introduce/110.docx', ROOT_PATH.'/public/upfile/110.zip' ]; // print_r($datalist);die; $filename = ROOT_PATH.'\public\/'.$saveName.'.zip'; if(file_exists($filename))
首先,公司的小组长给了我一个任务,把一个txt的文件中的部分内容,存进一个在hive中已有的表的相同结构的表中.所以我的流程主要有三个,首先,把数据处理成和hive中表相同结构的数据,然后仿照已有的hive中表的结构再创建一张新的数据表,最后把本地的txt文件上传到hive中新建的数据表中. 1:已有的数据表的结构和在hive表中的结构完全对不上,下面的图是原来hive中表的结构和小组长给我的txt中表的结构: 大家可以看出,我们原来的hive中表的字段一共有17个,而组长给我的表中的字段一共有
这篇文章主要介绍了如何在python中写hive脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.直接执行.sql脚本 import numpy as np import pandas as pd import lightgbm as lgb from pandas import DataFrame from sklearn.model_selection import train_test_split from io import St
本文为大家分享了mysql 5.7.18 Archive压缩版安装的具体方法,供大家参考,具体内容如下 文章参考: 5.7.17 winx64安装配置图文教程 mysql 5.7 zip archive版本安装教程 官网 进入 进入 往下滑: 解压: 设置环境变量:好像没用到这个环境变量(可以尝试不设置) 1) 2) 新建my.ini 初始化 注意:初始化只能一次,第二次执行mysqld –initialize会报错 初始化后找到mysql的密码: 输入密码是,黏贴:f6yL!frt>!wn 修
本文为大家分享了mysql 8.0.11压缩版安装教程,供大家参考,具体内容如下 1. MySQL解压与配置 下载:链接地址 解压:比如解压到D:\mysql 配置:配置系统环境变量,MYSQL_HOME=D:\mysql\mysql-8.0.11-winx64 path新增路径:%MYSQL_HOME%\bin,保存退出. 2. 文件配置 在解压根目录mysql-8.0.11-winx64下创建my.ini文件,新增内容如下: [mysqld] # 设置3306端口 port=3306 # 设
废话不多说了,直接给大家贴代码了,具体代码如下所示: #安装依赖包 yum search libaio # search for info yum install libaio # install library #新建用户组合用户 groupadd mysql useradd mysql -g mysql #解压到data下面 tar -zxvf /data/software/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /data #重命名 mv
本文为大家分享了mysql 8.0.12 解压版安装教程,供大家参考,具体内容如下 1.首先在官网上下载mysql8.0.12的压缩包:下载地址 2.下载成功后解压到任意目录,比如我的是E:\download\mysql-8.0.12-winx64: 3.配置环境变量,在系统变量path的末尾追加解压后的bin文件夹所在目录:E:\download\mysql-8.0.12-winx64\mysql-8.0.12-winx64; 4.以管理员身份运行cmd,如果不是管理员则不能注册mysql服务
下载mysql安装程序 官方下载地址:http://dev.mysql.com/downloads/mysql/ 解压下载文件,如图 其中data和my.ini文件需要自己创建 my.ini 文件配置如下: [client] port=3306 default-character-set=utf8 [mysqld] # 设置为自己MYSQL的安装目录 basedir=D:\mysql # 设置为MYSQL的数据目录 datadir=D:\mysql\data port=3306 characte
MySQL是一个小巧玲珑但功能强大的数据库,目前十分流行.但是官网给出的安装包有两种格式,一个是msi格式,一个是zip格式的.很多人下了zip格式的解压发现没有setup.exe,面对一堆文件一头雾水,不知如何安装.下面笔者将介绍如何解决此情况下安装过程中的各种问题. 比较简单的步骤: 在win2003及win2008 r2以上版本: 将下载下来的mysql解压到指定目录下(如:d:\mysql) 安装服务 在命令行输入 d:\mysql\bin\mysqld -install net sta
mysql5.7.17安装教程分享给大家,供大家参考,具体内容如下 从官网下载zip https://www.mysql.com/downloads/ 解压 D:\devtool\mysql-5.7.17-winx64\ 将 D:\devtool\mysql-5.7.17-winx64\bin 加入环境变量 在任务栏 windows图标上右键->命令提示符(管理员), 以管理员身份运行 cmd , cd 到D:\devtool\mysql-5.7.17-winx64\bin. 不以管理员运行
Mysql8.0.12解压版安装方法亲测,供大家参考 1.下载(官方推荐的是下载安装板,但是之前一直用,想试一下解压版,毕竟更简单嘛),下载地址 2.解压 这就是解压后的目录,但是我们需要在这个基础上做两步小操作 (1)创建一个名为data的文件夹 (2)创建一个名为my.ini的文件 3.修改my.ini文件 [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] # 设置3306端口 port = 3306 # 设置mysq
一.安装过程 MySQL 版本:5.7.18 1 .配置my.ini文件(简单的配置),放到MySQL的根目录下,此处的文件路径配置需要为绝对路径(使用反斜杠需要双拼,斜杠一个就可以了)(data文件夹不用自己创建,后面生成) [client] default-character-set=utf8 [mysqld] port=3306 character_set_server=utf8 basedir="D:\\mysql-5.7.18-winx64" datadir="D:
mysql 8.0.20 winx64.zip压缩版安装教程记录如下,分享给大家 1.下载 MySQL官网:链接 直接点击链接也可以下载:mysql 8.0.20 2.在F盘新建mysql目录,在mysql下新建MySQL文件夹,将压缩包解压到MySQL文件夹中. 3.在zip解压根目录下新建my.ini.(新建文本文档,并将后缀名改成.ini) 5.然后我们编辑my.ini,设置MySQL根目录,以及数据库数据存放的目录等. [mysqld] # 设置3306端口 port=3306 # 设置