首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在CDP上使用HBase HBase客户端通过Knox连接HBase

在CDP上使用HBase HBase客户端通过Knox连接HBase
EN

Stack Overflow用户
提问于 2021-06-18 13:46:58
回答 1查看 210关注 0票数 0

我需要使用HBase客户端通过Knox连接到HBase。我有诺克斯的详细信息如下

代码语言:javascript
复制
Knox_Url: https://knox-host:port/gateway/cdp-proxy-api/hbase
Username: knox_user_name
Password: knox_password

使用下面的代码,我可以添加URL,但不能添加凭据。

代码语言:javascript
复制
URL url = new URL(Knox_Url);
Configuration conf = HBaseConfiguration.create();
conf.addResource(URL);

Connection con = ConnectionFactory.createConnection(conf);

我已经看到了其他的StackOverflow问题,但它们都提到了在配置中设置以下属性。

代码语言:javascript
复制
 public void setUp() throws IOException {
        config = HBaseConfiguration.create();
        config.set("zookeeper.znode.parent","/hbase-unsecure");
        config.set("hbase.zookeeper.quorum", ZOOKEEPER_QUORUM);
        config.set("hbase.zookeeper.property.clientPort", "2181");
        config.set("hbase.cluster.distributed", "true");
        connection = ConnectionFactory.createConnection(config);
    }

我的问题是,是否有办法使用诺克斯网关详细信息连接到HBase并检索数据?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-23 08:31:32

我们可以使用RestTemplate连接到HBase。

Config

代码语言:javascript
复制
public RestTemplate create(){
    return new RestTemplateBuilder()
              .basicAuthentication(user, password)
              .setConnectTimeout(Duration.ofSeconds(60))
              .setReadTimeout(Duration.ofSeconds(60))
              .build();
}

使用

代码语言:javascript
复制
String url = "https://host:port/gateway/cdp-proxy-api/hbase";
String response = config.create().getForEntity(url, String.class).getBody();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68036302

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档