使用DBeaver访问MRS HetuEngine
应用场景
DBeaver是一个SQL客户端和数据库管理工具。对于关系数据库,使用JDBC API通过JDBC驱动程序与数据库交互。对于其他数据库(NoSQL),使用专有数据库驱动程序。
本章节以DBeaver 7.2.0版本为例,讲解如何使用DBeaver访问MRS HetuEngine。
方案架构
出于管理和信息收集的需要,企业内部会存储海量数据,包括数目众多的各种数据库、数据仓库等,此时会面临数据源种类繁多、数据集结构化混合、相关数据存放分散等困境,导致跨源查询开发成本高,跨源复杂查询耗时长。
HetuEngine提供了统一标准SQL实现跨源协同分析,简化跨源分析操作。
约束与限制
- 已安装DBeaver 7.2.0版本。DBeaver软件下载链接:https://dbeaver.io/files/7.2.0/ 。
- 适用于LTS版的MRS 3.1.2及以后版本集群。
步骤一:创建MRS集群和计算实例
- 创建MRS集群。
创建并购买一个包含HetuEngine组件的MRS集群,详情可参考创建MRS集群。
- 创建hetu_user用户。
在集群中创建“人机”用户,如hetu_user,可参考创建HetuEngine用户。启用Ranger鉴权的集群需根据业务需求为该hetu_user添加Ranger权限,可参考添加HetuEngine的Ranger访问权限策略。
- 创建HetuEngine计算实例。
创建计算实例并确保运行正常,可参考创建HetuEngine计算实例。
步骤二:获取JDBC jar包并配置主机映射
- 下载HetuEngine客户端获取JDBC jar包。
- 登录FusionInsight Manager。
- 选择“集群 > 服务 > HetuEngine > 概览”。
- 在页面右上角,选择“更多 > 下载客户端”,根据界面提示下载“完整客户端”文件到本地。
- 解压HetuEngine客户端压缩包文件“FusionInsight_Cluster_集群ID_ HetuEngine_Client.tar”获取jdbc文件,并存放在本地,例如“D:\test”。
jdbc文件获取方法:
在“FusionInsight_Cluster_集群ID_HetuEngine_ClientConfig\HetuEngine\xxx\”路径下解压获取“hetu-jdbc-*.jar”文件。
备注:xxx为“arm”或“x86”。
- 在本地hosts文件添加主机映射。
根据使用HSFabric方式或HSBroker方式添加对应实例所在主机映射,格式为:主机IP 主机名
例如:192.168.42.90 server-2110081635-0001
Windows本地hosts文件存放路径举例:“C:\Windows\System32\drivers\etc”。
步骤三:在DBeaver配置访问HetuEngine参数
- 打开DBeaver,选择“数据库 > 新建连接”,在“ALL”中搜索“PrestoSQL”并打开PrestoSQL。
- 单击“编辑驱动设置”,参考下表信息设置相关参数。
表1 驱动设置信息 参数名
参数值
类名
io.prestosql.jdbc.PrestoDriver
URL模板
- 通过HSFabric方式访问HetuEngine
jdbc:presto://<HSFabricIP1:port1>,<HSFabricIP2:port2>,<HSFabricIP3:port3>/hive/default?serviceDiscoveryMode=hsfabric
示例:
jdbc:presto://192.168.42.90:29902,192.168.42.91:29902,192.168.42.92:29902/hive/default?serviceDiscoveryMode=hsfabric
- 通过HSBroker方式访问HetuEngine
jdbc:presto://<HSBrokerIP1:port1>,<HSBrokerIP2:port2>,<HSBrokerIP3:port3>/hive/default?serviceDiscoveryMode=hsbroker
示例:
jdbc:presto://192.168.42.90:29860,192.168.42.91:29860,192.168.42.92:29860/hive/default?serviceDiscoveryMode=hsbroker
- 获取HSFabric、HSBroker节点IP及端口号:
- 登录FusionInsight Manager。
- 选择“集群 > 服务 > HetuEngine > 实例”,获取HSFabric或HSBroker所有实例的业务IP,可选择一个或多个正常状态的进行连接。
- 获取端口号,选择“集群 > 服务 > HetuEngine > 配置 > 全部配置”:
搜索“gateway.port”,获取HSFabric的端口号,安全模式默认为29902,普通模式默认29903;
搜索“server.port”,获取HSBroker的端口号,安全模式默认为29860,普通模式默认29861;
- 如果连接不成功,请关闭代理重试。
- 通过HSFabric方式访问HetuEngine
- 单击“添加文件”,上传步骤二:获取JDBC jar包并配置主机映射中获取的JDBC驱动包。
- 单击“找到类”,自动获取驱动类,单击“确定”完成驱动设置,如下图所示。如果“库”中存在“io.prestosql:presto-jdbc:RELEASE”,单击“找到类”前需将其删掉。
图2 安全模式驱动设置
- 连接设置。
- 连接成功后进入下图所示页面。
图5 连接成功