首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

经过Thrift 方式访问 Hive

2012-12-28 
通过Thrift 方式访问 Hive?package com.netqin.hive.kpiimport org.apache.hadoop.hive.service.HiveClie

通过Thrift 方式访问 Hive

?

package com.netqin.hive.kpi;import org.apache.hadoop.hive.service.HiveClient;import org.apache.hadoop.hive.service.HiveServerException;import org.apache.log4j.Logger;import org.apache.thrift.TException;import org.apache.thrift.protocol.TBinaryProtocol;import org.apache.thrift.protocol.TProtocol;import org.apache.thrift.transport.TSocket;import org.apache.thrift.transport.TTransport;import org.apache.thrift.transport.TTransportException;public class AndroidKpi {// Thrift Server IP Addressprivate static String HOST = "192.168.0.59";// Thrift Server Portprivate static int PORT = 10000;public static final Logger logger = Logger.getLogger(AndroidKpi.class); // logger    public static void main(String[] args) {           TTransport transport  = new TSocket(HOST, PORT);           TProtocol protocol = new TBinaryProtocol(transport);           HiveClient client = new HiveClient(protocol);           String tableName = "tableName";           try {transport.open();// Execute Hive Query Language Commandclient.execute("select count(*) from "+tableName);System.out.println(client.fetchOne());//logger.debug("size "+client.fetchOne());} catch (TTransportException e) {logger.error(e.getMessage());e.printStackTrace();} catch (HiveServerException e) {logger.error(e.getMessage());e.printStackTrace();} catch (TException e) {logger.error(e.getMessage());e.printStackTrace();}    }}


运行以上的程序所必需的Jar包:

热点排行