Go连接Hive

来源:互联网 发布:淘宝对接平台 编辑:程序博客网 时间:2024/05/17 07:28

经过两天多的资料查找,反复测试从网上找到的多种方案,加上阿里云售后的支持,终于搞定Go语言连接Apache Hive的问题。
测试环境,阿里云E-MapReduce 2.1 中的Hive, Golang 1.7,开发环境win10。
在阿里云hive-site.xml中需要添加:

 <property>    <name>hive.server2.authentication</name>    <value>NOSASL</value>  </property>

代码如下:

package mainimport (    "fmt"    "github.com/derekgr/hivething"  //基于hiveserver2 thrift)func main() {    db, err := hivething.Connect("${IP}:${port}", hivething.DefaultOptions)    if err != nil {        fmt.Errorf(err.Error())    }    defer db.Close()    results, err := db.Query("show tables")  //select、dml、ddl都调用db.Query    if err != nil {        fmt.Println(err)        return    }    var tableName string    for results.Next() {        results.Scan(&tableName)        fmt.Println(tableName)    }
0 0
原创粉丝点击