[7] 编写Python脚本将Hive的运算结果保存到MySQL数据库中(1) - 摩西莫西 - ITeye技术网站

[7] 编写Python脚本将Hive的运算结果保存到MySQL数据库中(1) - 摩西莫西 - ITeye技术网站

[7] 编写Python脚本将Hive的运算结果保存到MySQL数据库中(1)

博客分类:Hive

脚本MySQLPythonSQL

编写Python脚本将Hive的运算结果保存到MySQL数据库中(1)

很多情况下,需要将Hive中的运算结果保存到MySQL数据库中,可以通过简单的Python脚本来实现。

例子1:如果获取Hive查询语句的返回值

#encoding=utf-8

from hive_service import ThriftHive

from hive_service.ttypes import HiveServerException

from thrift import Thrift

from thrift.transport import TSocket

from thrift.transport import TTransport

from thrift.protocol import TBinaryProtocol


def hiveExe(sql):

try:

   transport = TSocket.TSocket('10.20.134.199', 10000) //Hive所在的服务器IP和使用的端口

   transport = TTransport.TBufferedTransport(transport)

   protocol = TBinaryProtocol.TBinaryProtocol(transport)

   client = ThriftHive.Client(protocol)

   transport.open()

   client.execute(sql)

   print "The return value is : " client.fetchOne() 

   transport.close()

except Thrift.TException, tx:

   print '%s' % (tx.message)


if __name__ == '__main__':

print hiveExe("select count(userid) as cnt from user_table where day ='20110120' ")

例子2:用户Hive查询结果的返回值更新MySQL指定表指定字段

def mysqlExe(sql):

        conn = MySQLdb.connect (host = "10.10.111.111",

                                   user = "user",

                                   passwd = "password",

                                   db = "database")

        cursor = conn.cursor ()

        cursor.execute (sql)

        cursor.close ()

        conn.close ()


def hiveExeUpdate(sql,db,tableName,column,date):

try:

   transport = TSocket.TSocket('10.20.134.199', 10000)

   transport = TTransport.TBufferedTransport(transport)

   protocol = TBinaryProtocol.TBinaryProtocol(transport)

   client = ThriftHive.Client(protocol)

   transport.open()

   client.execute(sql)

   update_sql= " update  " + tableName + " set " + column + " = " + client.fetchOne() + " where id = '" + date + "'"

   mysqlExe(update_sql) //执行一条SQL语句

   transport.close()

       except Thrift.TException, tx:

   print '%s' % (tx.message)

posted on 2012-09-21 18:03 lexus 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lexus/archive/2012/09/21/2697309.html

[7] 编写Python脚本将Hive的运算结果保存到MySQL数据库中(1) - 摩西莫西 - ITeye技术网站...相关推荐

  1. python hive mysql_[7] 编写Python脚本将Hive的运算结果保存到MySQL数据库中(1) - 摩西莫西 - ITeye技术网站...

    编写Python脚本将Hive的运算结果保存到MySQL数据库中(1) 很多情况下,需要将Hive中的运算结果保存到MySQL数据库中,可以通过简单的Python脚本来实现. 例子1:如果获取Hive ...

  2. 在ubuntu 16.04里使用python—scrapy将爬取到的数据存到mysql数据库中的一些随笔

    一.将爬取的数据保存到mysql数据库的代码(已经能将爬取的数据保存到json文件) (1)编辑Pipeline.py文件 (2)编辑settings.py文件 二.将数据保存至mysql数据库出现的 ...

  3. python爬取淘宝搜索页面+url+图片下载并将信息保存到MySQL数据库中

    人狠话不多,直接上代码,都有详细注释,不多解释 需要安装的包: pymysql,用于连接mysql数据库 urllib,爬虫必备包,urllib3也可以 # encoding:utf-8 import ...

  4. opencv访问mysql_使用Python和OpenCV将捕获的图像保存到MySQL数据库

    我有一段代码,可以从笔记本电脑的内部摄像头捕捉图像.有了这个图片,我想直接把它发送到我的MySQL数据库.这是密码.在import cv2 import mysql.connector from my ...

  5. 自制python脚本,6小时获取上千台mysql数据库服务器

    原文投稿在合天智汇的微信公众号:https://mp.weixin.qq.com/s/OuwL3O9rszdbRPg_6uLPGQ 但由于那里文章中的截图过于模糊,于是在这里再记录一下. 前言: 一开 ...

  6. python爬虫抓取51cto博客大牛的文章保存到MySQL数据库

    脚本实现:获取51cto网站某大牛文章的url,并存储到数据库中. #!/usr/bin/env python #coding:utf-8 from bs4 import BeautifulSoup ...

  7. 使用Python通过API提取基金净值信息并保存到SQLite数据库

    之前写了一篇保存到Excel版的,但毕竟随着数据量的增大,Excel不是长久之计,所以研究了一下SQLite数据库,SQLite有个好处,不用另外安装程序,Python自带,而且是单文件,方便拷贝转移 ...

  8. python读取串口数据保存到mysql数据库_Python3读取Excel数据存入MySQL的方法

    Python是数据分析的强大利器. 利用Python做数据分析,第一步就是学习如何读取日常工作中产生各种excel报表并存入数据中,方便后续数据处理. 这里向大家分享python3如何使用xlrd读取 ...

  9. python股票接口_Python 从 sina 股票数据接口读取数据,并保存到 MySQL 数据库

    说明 从 sina 的数据接口获取数据,之后,保存到 MySql 数据库 文件:getDataFromSina.py ''' Created on 2018年2月11日 @author: Livon ...

最新文章

  1. Ajax的get、post和ajax提交
  2. flutter嵌入HTML5页面,Flutter加载Html并实现与JS 的双向调用
  3. 后端开发:数据持久化框架为什么放弃Hibernate、JPA、Mybatis,最终选择JDBCTemplate!...
  4. 模拟传输和数字传输的优缺点
  5. 第二百一十九天 how can I 坚持
  6. go ip过滤_用Go实现自己的爬虫
  7. Linux下MongoDB服务安装
  8. ant 安装依赖bug1
  9. 区块链数据库SunlightDB BI智能标签
  10. 反意疑问句及其回答用法归纳+习题讲解
  11. 苹果官方付费升级内存_苹果6 Plus升级内存后遇到刷机报错40维修过程【详解】...
  12. C语言操作符详解(坑点+重难点+优先级结合性总结)
  13. (附源码)springboot社区文明养宠平台 毕业设计 231609
  14. RecyclerView EditText数据混乱解决
  15. 什么是session
  16. python 图像填充颜色_Opencv:在轮廓图像中填充颜色
  17. 概率论计算圆周率(π)
  18. 购买重疾险的十大误区(建议收藏)
  19. 手机 音乐 推送 到 linux 播放器,很简单地解决了:用手机控制群晖播放音乐并推送到功放的问题...
  20. cocos-2d 游戏开发

热门文章

  1. # 靠谱:开源IM项目OpenIM压测程序介绍-自己动手压测性能和稳定性
  2. CREO:CREO软件之工程图【插入页面】、【装配图出工程图】、【将视图转为绘制图元】、【工程图输入到CAD中去修改】的简介及其使用方法(图文教程)之详细攻略
  3. 搞的跟QQ 新闻一样
  4. java基础(代码练习)
  5. CC2640R2F蓝牙5片外OAD的实现
  6. Jase面向对象基础
  7. android计算器布局
  8. python初始化二维矩阵
  9. 到了40的程序员,都何去何从
  10. tiny4412 linux-4.2 移植(七)USB 2.0 host框架(1)phy