MRS二次开发(7/27): Hetu的JDBC接口调用样例

举报
晋红轻 发表于 2020/11/28 10:01:03 2020/11/28
【摘要】 HetuEngine是一个高性能的分布式SQL查询引擎,支持多集群的Hive数据源的交叉查询,支持CLI和JDBC客户端两种访问模式。本文介绍Hetu的JDBC接口调用样例。

MRS二次开发(7/27): HetuJDBC接口调用样例

一、Hetu简介

 HetuEngine是一个高性能的分布式SQL查询引擎,支持多集群的Hive数据源的交叉查询,支持CLI和JDBC客户端两种访问模式。

二、样例背景

 场景说明

 假定用户开发一个应用程序,需要对Hive数据源的A表和MPPDB数据源的B表进行join运算,则可以用HetuEngine来实现Hive数据源数据查询,流程如下:

连接HetuEngine JDBC Server。

组装SQL语句。

SQL语句执行。

返回结果解析。

关闭HetuEngine JDBC Server的连接。

三、Windows环境样例调用步骤

环境准备,参考第一课

比对时间,与集群时间误差不能超过5分钟

检查 C:\Windows\System32\drivers\etc\hosts文件中是否包含所有集群节点的域名IP映射信息

IDEA打开样例代码中的hetu-examples-security目录,默认会自动下载依赖,如未下载,选中该目录下的pom.xml文件,右键点击“Add As Maven Project”后等待项目自动将依赖下载完毕

检查hetu集群是否启动

Manager界面下载用户认证凭据后,解压缩获取秘钥文件user.keytab和krb5.conf,将这两个文件放到放到工程resources目录下

hetu集群获取hetuserver.jks, 将这个文件放文件放到放到工程resources目录下

创建jaas-zk.conf配置文件, 将这个文件放到放到工程resources目录下

  • Client {
    sun.security.auth.module.Krb5LoginModule required
    useKeyTab=true
    principal="developuser@HADOOP.COM"
    keyTab="C:/172-16-10-135armclient/user.keytab"
    useTicketCache=false
    storeKey=true
    debug=true;
    };

右键选择resources目录,选择“Mark Directory as”-"Resources Root"

修改样例代码中的用户信息,集群连接信息

打开 JDBCExample.java 文件右键执行Run 启动样例代码

四、Linux环境调试步骤

完成Windows环境样例调用步骤

修改代码中的配置文件路径

windows环境中执行打包

检查linux环境时间与集群误差不超过5分钟

检查linux环境的JDK版本为1.8

检查linux环境的/etc/hosts文件中包含所有集群节点的域名IP映射信息

创建样例执行路径,例如/opt/hetutest

上传windows环境打包后生成的target目录下的JDBCExample-1.0-SNAPSHOT.jar 包到/opt/hetutest目录

上传hetu的驱动运行jar包presto-jdbc-316-hw-ei-301001-SNAPSHOT.jar至/opt/hetutest

上传windows环境样例工程resources目录下的配置文件user.keytab,krb5.conf,hetuserver.jks,jaas-zk.conf到/opt/hetutest目录下

修改jaas-zk.conf文件内容:

  • Client {
    sun.security.auth.module.Krb5LoginModule required
    useKeyTab=true
    principal="developuser@HADOOP.COM"
    keyTab="/opt/hetutest/user.keytab"
    useTicketCache=false
    storeKey=true
    debug=true;
    };

执行如下命令验证linux环境下样例代码运行

  • java -cp /opt/hetutest/:/opt/hetutest/JDBCExample-1.0-SNAPSHOT.jar:/opt/hetutest/presto-jdbc-316-hw-ei-301001-SNAPSHOT.jar com.huawei.presto.JDBCExample

五、问题互动渠道

FusonInsight 论坛入口 https://bbs.huaweicloud.com/forum/forum-1103-1.html

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。