在 Qubole 中配置 Snowflake for Spark¶
要在 Qubole 中配置 Snowflake for Spark,只需将 Snowflake 添加为 Qubole 数据存储库即可。本主题分步说明如何使用 Qubole Data Service (QDS) UI 执行此任务。
备注
您还可以使用 QDS REST API 将 Snowflake 添加为数据存储库。有关分步说明,请参阅 将 Snowflake Data Warehouse 添加为数据存储库 (http://docs.qubole.com/en/latest/partner-integration/snowflake-integration/add-a-snowflake-data-warehouse.html) (在 Qubole 文档中)。
本主题内容:
先决条件¶
您必须是 QDS 系统管理员才能添加数据存储库。
您必须拥有 Qubole Enterprise Edition 账户。
连接中使用的角色必须对架构(包含您通过 Qubole 读取或写入的表)具有 USAGE 和 CREATE STAGE 权限。
为长时间运行的查询准备外部位置¶
如果您的某些作业长度超过 36 小时,请考虑准备一个外部位置用于在 Snowflake 和 Spark 之间进行数据交换。有关更多信息,请参阅 为文件准备外部位置。
在 QDS UI 中将 Snowflake 添加为数据存储库¶
在 Home 菜单中,点击 Explore。
在 Explore 页面上的下拉列表中,选择 + Add Data Store。
在以下字段中输入所需信息:
Data Store Name:输入要创建的数据存储库的名称。
Database Type:选择“Snowflake”。
Catalog Name:输入 Snowflake 目录的名称。
Database Name:输入 Snowflake 中用于存储数据的数据库的名称。
Warehouse Name:输入要用于查询的 Snowflake 虚拟仓库的名称。
Host Address:输入 Snowflake 账户的基本 URL (例如
myorganization-myaccount.snowflakecomputing.cn
)。有关在此 URL 中指定账户标识符的详细信息,请参阅 账户标识符。Username:输入 Snowflake 用户的登录名(用于连接到主机)。
Password:输入 Snowflake 用户的密码(用于连接到主机)。
请注意,所有值都 区分大小写,除了 Host Address。
点击 Save 以创建数据存储库。
对于要添加为数据存储库的每个 Snowflake 数据库,请重复这些步骤。或者,您可以编辑数据存储库以更改 Snowflake 数据库或数据存储库的任何其他属性(例如,更改用于查询的虚拟仓库)。
备注
在添加 Snowflake 数据存储库后,重新启动 Spark 集群(如果您使用的是已经运行的 Spark 集群)。Spark 重新启动会安装适用于 Snowflake Connector for Spark 和 Snowflake JDBC 驱动程序的 .jar
文件。
在 Qubole 中验证 Snowflake 数据存储库¶
要验证 Snowflake 数据存储库是否已创建并已激活,请点击 Explore 页面左上角的下拉列表。绿点表示数据存储库已激活。
您还应该验证 Explore 页面左窗格中的表资源管理器小部件是否显示了数据存储库中指定 Snowflake 数据库中的所有表。
Qubole 中的查询下推¶
Spark 查询受益于 Snowflake 的自动查询下推优化,从而提高了性能。默认情况下,Qubole 中已启用 Snowflake 查询下推。
有关查询下推的更多详细信息,请参阅 将 Spark 查询处理推送到 Snowflake (Snowflake 博客)。