如何在python中写hive脚本

时间:2021-05-22

这篇文章主要介绍了如何在python中写hive脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1、直接执行.sql脚本

import numpy as npimport pandas as pdimport lightgbm as lgbfrom pandas import DataFramefrom sklearn.model_selection import train_test_splitfrom io import StringIOimport gcimport sysimport oshive_cmd = "hive -f ./sql/sql.sql"output = os.popen(hive_cmd)data_cart_prop = pd.read_csv(StringIO(unicode(output.read(),'utf-8')), sep="\t",header=0)

2、Hive语句执行

假如有如下hive sql:

hive_cmd = 'hive -e "select count(*) from hbase.routermac_sort_10;"'

一般在python中按照如下方式执行该hive sql:

os.system(hive_cmd)

---------------------

hive_cmd1 = "hive -f ./user.sql"output1 = os.popen(hive_cmd1)test_user = pd.read_csv(StringIO(unicode(output1.read(),'utf-8')), sep="\t",header=0) hive_cmd2 = "hive -f ./action.sql"output2 = os.popen(hive_cmd2)test_action = pd.read_csv(StringIO(unicode(output2.read(),'utf-8')), sep="\t",header=0) hive_cmd3 = "hive -f ./click.sql"output3 = os.popen(hive_cmd3)test_click = pd.read_csv(StringIO(unicode(output3.read(),'utf-8')), sep="\t",header=0)

为了显示表头,在脚本中加上一句:set hive.cli.print.header=true;

或者,使用如下语句:

hive_cmd = 'hive -e "set hive.cli.print.header=true;SELECT * FROM dev.temp_dev_jypt_decor_user_label_phase_one_view_feature WHERE(dt = "2018-09-17");"'output = os.popen(hive_cmd)data_cart_prop = pd.read_csv(StringIO(unicode(output.read(),'utf-8')), sep="\t",header=0)

3、tf 显存占用

import tensorflow as tftf.enable_eager_execution()x = tf.get_variable('x', shape=[1], initializer=tf.constant_initializer(3.))with tf.GradientTape() as tape: y = tf.square(x) y_grad = tape.gradient(y, x) print([y.numpy(), y_grad.numpy()])

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章