本文介绍在同一VPC下创建的E-MapReduce集群和RDS MySQL实例,如何通过E-MapReduce集群的Presto查询RDS MySQL数据库信息。
前提条件
- 已创建集群,并且选择了Presto服务。详情请参见创建集群。
- 已购买RDS,详情请参见创建RDS MySQL实例。
说明 本文以RDS为例介绍。建议类型选择MySQL的5.7;系列选择高可用版。
背景信息
步骤一:配置Connector
- 进入Presto服务。
- 登录阿里云E-MapReduce控制台。
- 在顶部菜单栏处,根据实际情况选择地域和资源组。
- 单击上方的集群管理页签。
- 在集群管理页面,单击相应集群所在行的详情。
- 在左侧导航栏,选择 。
- 添加Connector信息。
- 保存配置。
- 单击右上角的保存。
- 在确认修改对话框中,输入执行原因,开启自动更新配置。
- 单击确定。
- 重启服务使配置生效。
- 选择右上角的 。
- 在执行集群操作对话框中,输入执行原因。
- 单击确定。
- 在确认对话框中,单击确定。
步骤二:查看RDS的数据库
步骤三:查询表数据
说明 本文示例中的
hive.default.tbl_department
是您在Hive上创建的表,connector1.emruser.tbl_employee
是您在MySQL上创建的表。
- 查询emruser.tbl_employee表的数据。
select * from connector1.emruser.tbl_employee;
返回类似如下表数据。id | name | dept_id | salary ----+------------+---------+--------- 1 | Ming Li | 1 | 10000.0 2 | Eric Cai | 1 | 11000.0 3 | Bonnie Liu | 2 | 11000.0 (3 rows)
- 查询tbl_department表的数据。
select * from hive.default.tbl_department;
返回类似如下表数据。dept_id | dept_name --------+---------- 1 | IT 2 | Finance (2 rows)
- 交叉查询表数据。
执行如下命令,交叉查询表default.tbl_department和emruser.tbl_employee的数据。
select * from hive.default.tbl_department a, connector1.emruser.tbl_employee b where a.dept_id = b.dept_id;
返回结果信息如下表所示。dept_id |dept_name | id | name | dept_id | salary --------+----------+----+------------+---------+--------- 2 | Finance | 3 | Bonnie Liu | 2 | 11000.0 1 | IT | 2 | Eric Cai | 1 | 11000.0 1 | IT | 1 | Ming Li | 1 | 10000.0 (3 rows)