通过Spark SQL读DLF管理的数据
数据湖构建 DLF(Data Lake Formation)提供了统一的元数据管理、统一的权限与安全管理、便捷的数据入湖能力以及一键式数据探索能力,您可以在云原生数据仓库 AnalyticDB MySQL 版中通过Spark SQL访问DLF中的元数据。
前提条件
AnalyticDB for MySQL集群的产品系列为企业版、基础版或湖仓版。
已在AnalyticDB for MySQL集群中创建Job型资源组。具体操作,请参见新建资源组。
已创建AnalyticDB for MySQL集群的数据库账号。
如果是通过阿里云账号访问,只需创建高权限账号。具体操作,请参见创建高权限账号。
如果是通过RAM用户访问,需要创建高权限账号和普通账号并且将RAM用户绑定到普通账号上。具体操作,请参见创建数据库账号和绑定或解绑RAM用户与数据库账号。
已授权AnalyticDB for MySQL扮演AliyunADBSparkProcessingDataRole角色来访问其他云资源。具体操作,请参见账号授权。
已开通DLF,并在AnalyticDB for MySQL同一地域创建数据目录(Catalog)。具体操作,请参见新建数据目录(Catalog)。
操作步骤
登录云原生数据仓库AnalyticDB MySQL控制台,在左上角选择集群所在地域。在左侧导航栏,单击集群列表,在企业版、基础版或湖仓版页签下,单击目标集群ID。
在左侧导航栏,单击
。在SQLConsole窗口,选择Spark引擎和Job型资源组。
编写Spark SQL作业。
SET spark.hadoop.dlf.catalog.accessKeyId=LTAI5tMnzDS5EyqqMsT****; SET spark.hadoop.dlf.catalog.accessKeySecret=A2kHFzEgFidOKrDKqAbJIPt8****; SET spark.hadoop.dlf.catalog.id=default; SET spark.sql.hive.metastore.version=dlf; SHOW DATABASES;
参数说明:
参数
是否必填
说明
spark.hadoop.dlf.catalog.accessKeyId
是
阿里云账号或具备DLF访问权限的RAM用户的AccessKey ID。
如何获取AccessKey ID和AccessKey Secret,请参见账号与权限。
spark.hadoop.dlf.catalog.accessKeySecret
是
阿里云账号或具备DLF访问权限的RAM用户的AccessKey Secret。
如何获取AccessKey ID和AccessKey Secret,请参见账号与权限。
spark.hadoop.dlf.catalog.id
是
数据目录(Catalog)的ID。如何查询数据目录(Catalog)ID,请参见查询数据目录(Catalog)。
spark.sql.hive.metastore.version
是
指定采用元数据服务版本,本文需填写为dlf。
其他参数请参见Spark应用配置参数说明。
单击立即执行,执行完成后,您可以在Spark Jar 开发页面应用列表页签中的日志查看数据。详情请参见Spark开发编辑器。