首页IT科技python调用hive脚本(python访问Hive配置 jmydream的专栏 博客频道 CSDN.NET)

python调用hive脚本(python访问Hive配置 jmydream的专栏 博客频道 CSDN.NET)

时间2025-09-19 10:21:37分类IT科技浏览6241
导读:分类: hive 2012-09-04 15:41 36人阅读 评论(0 收藏 举报 目录(? [+] hive有三种...

分类:

hive

2012-09-04 15:41 36人阅读 评论(0) 收藏 举报

目录(?)[+]

hive有三种启动方式:

hive命令行模式                ,直接输入/hive/bin/hive的执行程序                         ,或者输入 hive –service cli 用于linux平台命令行查询        ,查询语句基本跟mysql查询语句类似

hiveweb界面的启动方式            ,hive

–service hwi 用于通过浏览器来访问hive                 。可以分离查询的执行                         ,同时执行多个查询;不用本地安装hive

hive远程服务 (端口号10000) 启动方式,hive以thrift服务的服务器形式运行            ,允许不同的语言编写客户端进行访问        ,通过thrift                         ,jdbc                ,odbc连接器和hive服务器与hive通信    ,这种方式很适合java                、python编程人员通过jdbc接口去访问hive                        。

这里实现第三种方式                         ,首先要安装thrift

Thrift是一个跨语言服务部署框架                     ,最初由Facebook于2007年开发,后于2008年进入Apache孵化器(Apache Incubator)        。类似于SOAP                    ,COM 和CORBA                         ,Thrift通过定义一个中间定义语言和Thrift代码生成工具    ,生成指定语言的代码             。目前                ,Thrift

支持C++,Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk和OCaml的代码生成                        。

在这里我们用的是thrift的另一个应用                         ,不是生成指定语言的代码        ,而是通过Thrift Gateway            ,利用Thrift序列化技术(支持C++                         ,PHP            ,Python等多种语言)适合其他异构系统调用hive        ,在我们这用python客户端通过thrift调用hive(将hive相关的python语句放与hive服务器)

thrift主页:http://thrift.apache.org/                         ,上面有详细的安装说明            。

到thrift主页下载最新版本thrift.http://thrift.apache.org/download/thrift-0.8.0.tar.gz

直接解压

tar zxvfthrift-0.8.0.tar.gz出现错误:This does not look like a tar archive

这是个BUG

解决办法:

gzip -d xxxx.tar.gz (对于.tar.gz文件的处理方式)

tar -xf xxxx.tar(对于.tar文件处理方式)

系统必备包和工具安装                ,按照http://thrift.apache.org/docs/install/ubuntu/上所说    ,安装必备工具和包

$:sudo apt-get install libboost-dev libboost-test-dev libboost-program-options-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev

python必备包安装:

$:python-dev python-twisted

安装thrifthttp://thrift.apache.org/docs/BuildingFromSource/

直接运行

$:./configure

不用运行

./bootstrap.sh

$:make & make install

thrift安装完毕         。

thrift的lib包加入python的lib下

运行

$: python

>>>fromhive_serviceimport

>>>ThritHiveImportError:cannotimportnameThritHive

查看之后                         ,才发现在执行了第(1)步后                     ,python2.7/site-packages中并没有相应模块,这样当然是不可能通过编译的                    ,所以到刚才解压后的根目录                         ,将build/lib中的所有模块都拷贝到python2.7/site-packages中    ,如下:有两种方式:

$:cd .../thrift-0.8.0/lib/py/build/lib.linux-x86_64-2.7

cp -r thrift/ /usr/lib/python2.7/site-packages/python插件方式

eclipse下python写hive程序设置

在菜单项windonw->preferences下

添加thrift for python 和 thrift for hive

oK

hive有三种启动方式: 这里实现第三种方式                ,首先要安装thrift thrift的lib包加入python的lib下 eclipse下python写hive程序设置

hive有三种启动方式:

hive命令行模式                         ,直接输入/hive/bin/hive的执行程序        ,或者输入 hive –service cli 用于linux平台命令行查询            ,查询语句基本跟mysql查询语句类似

hiveweb界面的启动方式                         ,hive

–service hwi 用于通过浏览器来访问hive                        。可以分离查询的执行            ,同时执行多个查询;不用本地安装hive hive远程服务 (端口号10000) 启动方式,hive以thrift服务的服务器形式运行        ,允许不同的语言编写客户端进行访问                         ,通过thrift                ,jdbc    ,odbc连接器和hive服务器与hive通信                         ,这种方式很适合java                         、python编程人员通过jdbc接口去访问hive                。 这里实现第三种方式                     ,首先要安装thrift
Thrift是一个跨语言服务部署框架,最初由Facebook于2007年开发                    ,后于2008年进入Apache孵化器(Apache Incubator)     。类似于SOAP                         ,COM 和CORBA    ,Thrift通过定义一个中间定义语言和Thrift代码生成工具                ,生成指定语言的代码                         。目前                         ,Thrift
支持C++,Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk和OCaml的代码生成                    。
在这里我们用的是thrift的另一个应用        ,不是生成指定语言的代码            ,而是通过Thrift Gateway                         ,利用Thrift序列化技术(支持C++            ,PHP        ,Python等多种语言)适合其他异构系统调用hive                         ,在我们这用python客户端通过thrift调用hive(将hive相关的python语句放与hive服务器)

thrift主页:http://thrift.apache.org/                ,上面有详细的安装说明。

到thrift主页下载最新版本thrift.http://thrift.apache.org/download/thrift-0.8.0.tar.gz

直接解压

tar zxvfthrift-0.8.0.tar.gz

出现错误:This does not look like a tar archive
这是个BUG

解决办法:

gzip -d xxxx.tar.gz (对于.tar.gz文件的处理方式)

tar -xf xxxx.tar(对于.tar文件处理方式)

系统必备包和工具安装    ,按照http://thrift.apache.org/docs/install/ubuntu/上所说                         ,安装必备工具和包
$:sudo apt-get install libboost-dev libboost-test-dev libboost-program-options-dev libevent-dev automake libtool flex bison pkg-config g++ libssl-dev
python必备包安装:
$:python-dev python-twisted
安装thrifthttp://thrift.apache.org/docs/BuildingFromSource/ 直接运行 $:./configure 不用运行 ./bootstrap.sh $:make & make install

thrift安装完毕                     。

thrift的lib包加入python的lib下

运行

$: python

>>>fromhive_serviceimport

>>>ThritHiveImportError:cannotimportnameThritHive

查看之后                     ,才发现在执行了第(1)步后,python2.7/site-packages中并没有相应模块                    ,这样当然是不可能通过编译的                         ,所以到刚才解压后的根目录    ,将build/lib中的所有模块都拷贝到python2.7/site-packages中                ,如下:有两种方式:

$:cd .../thrift-0.8.0/lib/py/build/lib.linux-x86_64-2.7

cp -r thrift/ /usr/lib/python2.7/site-packages/

python插件方式

eclipse下python写hive程序设置

在菜单项windonw->preferences下

添加thrift for python 和 thrift for hive

oK

声明:本站所有文章                         ,如无特殊说明或标注        ,均为本站原创发布                        。任何个人或组织            ,在未征得本站同意时                         ,禁止复制        、盗用            、采集                         、发布本站内容到任何网站            、书籍等各类媒体平台    。如若本站内容侵犯了原著者的合法权益            ,可联系我们进行处理                 。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
commander是什么牌子手表(command.exe是病毒进程吗 command进程安全吗)