在《云上商业智能最佳实践》中,我们演示了如何使用 node-port 的外部连接方式接入 PieCloudDB。本文结合传统外部连接方式,聚焦全新的外部连接工具 PieProxy,通过外部接入场景结合管控平台相关信息,对接入步骤进行举例和演示(演示视频链接)。
1. 前言
目前, PieCloudDB 在各版本都提供了外部接入功能。同一账户下的用户可通过处于开启状态的虚拟数仓,使用 JDBC 、ODBC 或 Postgres 驱动从外部连接数据库来获取数据。
从2.5.1113版本起,PieCloudDB CoC 以及其他平行版本支持使用 PieProxy 进行外部连接。PieProxy 是基于PgBouncer、为 PieCloudDB 量身定制的外部连接工具。与传统 node-port 连接相比,PieProxy 更轻量,通过高并发、高可用性,有效减轻数据库在处理外部连接请求时的负担。综上,我们推荐使用 PieProxy 对 PieCloudDB 进行外部连接。注意,2.5.1113 之前旧版本的 PieCloudDB 只提供传统 node-port 的连接方式。
2. 汇总外部连接信息
PieCloudDB 外部连接总共需要三类信息:
- 用户连接信息
- 用户名
- 密码
- 虚拟数仓信息
- 虚拟数仓服务器地址
- 端口号
- 虚拟数仓ID
- 数据库信息
2.1 用户连接信息
这里我们以《快速开始PieCloudDB》 中的账户管理员 David 为例。登录管控平台后,各用户可通过管控平台右上角的用户信息栏点击外部接入,获得用户相关的外部接入信息。点击右上角菜单「外部接入」按钮,进入相关界面。
界面会对接入格式进行提示,注意,目前只有通过PieProxy进行外部连接的虚拟数仓需要额外对连接进行设置。
点击「重置接入 Token」获得接入用户名及密码。再次重置 Token 会将接入密码重新设置,先前的密码将不再有效。
2.2 虚拟数仓信息
记录好用户名和 Token,我们来到左侧菜单栏「虚拟数仓」菜单。进入界面后,确认目标虚拟数仓已开启外部接入。这里我们进行外部连接的虚拟数仓为「VW1」。
根据需要外部接入的虚拟数仓,点击右侧「查看详情」查看虚拟数仓详细信息,界面大致如下。
进入详情页面后,外部接入需要如上图所示该界面中的三条信息:
- 虚拟数仓ID
- 接入地址
- 服务端口号
2.3 数据库信息
本篇我们以 PieCloudDB 中的初始数据库「openpie」为例,进行外部连接。这里我们只需数据库名称即可。
2.4 总结
通过 JDBC、ODBC、PostgreSQL 等驱动,我们即可通过外部连接接入 PieCloudDB 。综合在「外部接入」界面获得的信息,我们通过以下信息进行外部连接。
- 接入IP地址:114.55.***.***
- 端口号:5432
- 用户名:david
- 密码:01************3db
- 连接选项:PGOPTIONS=’-c warehouse=cl01*******fgd’
- 数据库名称:openpie
3. PieProxy 连接实例 — DBeaver
这里我们以 DBeaver 为例。进入 DBeaver 后,点击左上角新增一个连接。
进入添加界面后选择「PostgreSQL」。
进入下一步,调整服务器、数据库、用户名及密码。如前文所述,这里我们连接的是初始数据库「openpie」。
完成后进入驱动属性界面,找到「options」,按照管控平台提供的格式填入虚拟数仓 ID。
设置完毕后点击测试连接,可以看到我们已成功连接到相应数据库。
点击完成按钮,完成连接设置。
接下来,我们使用刚设置的连接来执行 SQL 任务。选择刚刚设置的连接,点击左上角 SQL 按钮新添一个 SQL 文件。
这里,我们在「openpie」数据库中新建一个表,插入新数据并验证新数据的存在。
create table test_1 (id int); insert into test_1 values (1),(2),(3); select * from test_1;
运行结果如下图所示。
我们也可使用 DBeaver 读写数据库中已存在的表。这里以「test_table」为例。「test_table」是一个先前被清空的表。我们在这张空表中插入两行新数据,并验证了新数据的存在。
insert into test_table values (4),(5); select * from test_table;
运行结果如下图所示。
4. 外部连接无法设置 PGOptions
在一些数据库管理及开发工具中,数据库连接无法设置选项。在这种情况下,我们可以通过数据库+‘#’+虚拟数仓ID 的方式进行连接,避免另外设置连接选项。
这里我们以 Navicat 为例,点击左上角新增一条连接,选择「PostgreSQL」。
进入界面后,输入从 PieCloudDB 获取的服务器、数据库及用户信息。在数据库名称处,加上‘#’及虚拟数仓 ID。
点击界面左下角测试连接,可以看到数据库连接成功。
最后点击保存按钮保存连接。
点击左上角新建一个SQL文件,通过刚刚创建的连接,即可对「openpie」数据库中的数据进行查询。
select * from test_table;
查询结果与先前一致。
以上为 PieCloudDB 外部连接的所有内容,感谢您的阅读。欢迎大家登录 PieCloudDB「云上云」版,开启属于自己的的数据探索之旅。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
1.前端请求 export function test(params) { return request({ url: ‘/test’, method: ‘get’, responseType: ‘blob’, params: params }) } 2.后端…