hive client java_使用hive客户端java api读写hive集群上的信息

packagecom.xiaoju.dqa.prometheus.client.hive;importorg.apache.hadoop.hive.conf.HiveConf;importorg.apache.hadoop.hive.metastore.IMetaStoreClient;importorg.apache.hadoop.hive.metastore.RetryingMetaStoreClient;importorg.apache.hadoop.hive.metastore.api.Database;importorg.apache.hadoop.hive.metastore.api.FieldSchema;importorg.apache.hadoop.hive.metastore.api.MetaException;importorg.apache.thrift.TException;importorg.slf4j.Logger;importjava.util.List;public classHiveClient {protected final Logger logger = org.slf4j.LoggerFactory.getLogger(this.getClass());

IMetaStoreClient client;publicHiveClient() {try{

HiveConf hiveConf= newHiveConf();

hiveConf.addResource("hive-site.xml");

client=RetryingMetaStoreClient.getProxy(hiveConf);

}catch(MetaException ex) {

logger.error(ex.getMessage());

}

}public ListgetAllDatabases() {

List databases = null;try{

databases=client.getAllDatabases();

}catch(TException ex) {

logger.error(ex.getMessage());

}returndatabases;

}publicDatabase getDatabase(String db) {

Database database= null;try{

database=client.getDatabase(db);

}catch(TException ex) {

logger.error(ex.getMessage());

}returndatabase;

}public ListgetSchema(String db, String table) {

List schema = null;try{

schema=client.getSchema(db, table);

}catch(TException ex) {

logger.error(ex.getMessage());

}returnschema;

}public ListgetAllTables(String db) {

List tables = null;try{

tables=client.getAllTables(db);

}catch(TException ex) {

logger.error(ex.getMessage());

}returntables;

}publicString getLocation(String db, String table) {

String location= null;try{

location=client.getTable(db, table).getSd().getLocation();

}catch(TException ex) {

logger.error(ex.getMessage());

}returnlocation;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值