Snowflake Python APIs 教程的常用设置¶
简介¶
本主题说明本文档中提供的所有 Snowflake Python APIs 教程所需的通用设置。
Snowflake Python APIs 概述¶
在开始设置之前,查看一下 Snowflake Python APIs 结构。下表列出了 API 中的一些常用模块:
模块: |
描述 |
---|---|
|
定义一个迭代器,用于表示从 Snowflake 数据库提取的某些资源实例。 |
|
管理 Snowflake 数据库。 |
|
管理 Snowflake 架构。 |
|
管理 Snowflake 表。 |
|
管理 Snowflake 任务。 |
|
|
|
在 Snowpark Container Services 中管理计算池。 |
|
在 Snowpark Container Services 中管理镜像仓库。 |
|
在 Snowpark Container Services 中管理服务。 |
如需当前可用的 APIs 的完整列表,请参阅 API 参考文档。
snowflake.core
模块代表用于管理 Snowflake 对象的核心 Snowflake Python APIs 的入口点。要使用 API,您需要遵循一种常见模式:
使用 Snowpark 或 Python Connector 连接建立会话,表示您与 Snowflake 的连接。
导入并实例化来自
snowflake.core
的Root
类,并将 Snowpark 会话对象作为实参传递。您使用所获得的
Root
对象,在 API 中访问其他方法和类型。
下面的代码提供了此模式的典型示例:
from snowflake.snowpark import Session
from snowflake.core import Root
session = Session.builder.configs(connection_params).create()
root = Root(session)
关于各种连接选项和属性的详细信息,请参阅 使用 Snowflake Python APIs 连接到 Snowflake。
备注
Snowflake Python APIs 可使用 Snowpark 会话或 Python Connector 连接,建立与 Snowflake 的连接。前面的示例使用的是 Snowpark 会话。
继续执行下一步,开始设置 API 及您的开发环境!
安装 Snowflake Python APIs¶
重要
Snowflake Python APIs 目前支持以下 Python 版本:
3.9
3.10
3.11
在安装 API 之前,您需要激活 Python 环境。
在本教程中,您可以使用 conda 或虚拟环境 (venv)。
若要创建并激活 conda 或虚拟环境,请打开命令行终端并运行以下命令:
conda create -n <env_name> python==3.10 conda activate <env_name>
python3 -m venv '.venv' source '.venv/bin/activate'
Snowflake Python APIs 包在 PyPI 中可用。
若要在新的 conda 或虚拟环境中安装 API 包,运行以下命令:
pip install snowflake -U
设置开发环境¶
本教程介绍可在 Jupyter 笔记本中运行的代码示例。本教程中的各个步骤循序渐进地展示了 Snowflake Python APIs 的功能。
首先设置您的开发环境,以便在笔记本中运行代码示例。
使用以下连接参数创建名为
$HOME/.snowflake/connections.toml
的文件,并使用您的真实凭据对其进行更新:[default] account = "<YOUR ACCOUNT NAME>" user = "<YOUR ACCOUNT USER>" password = "<YOUR ACCOUNT USER PASSWORD>" # optional # warehouse = "<YOUR COMPUTE WH>" # optional # database = "<YOUR DATABASE>" # optional # schema = "<YOUR SCHEMA>"
此示例通过创建名为
default
的连接定义,将这些参数指定为您环境中的 Snowflake 的默认连接。使用如下方法之一打开笔记本:
在支持 Jupyter 笔记本的代码编辑器(例如 Visual Studio Code)中打开一个新笔记本。
若要在浏览器中打开笔记本,请使用
jupyter notebook
命令启动笔记本服务器。为了确保您的环境可以运行笔记本,在启动笔记本服务器之前,请在您的终端中运行
conda install notebook
。
在笔记本的第一个单元格中,运行以下导入语句:
from datetime import timedelta from snowflake.snowpark import Session from snowflake.snowpark.functions import col from snowflake.core import Root, CreateMode from snowflake.core.database import Database from snowflake.core.schema import Schema from snowflake.core.stage import Stage from snowflake.core.table import Table, TableColumn, PrimaryKey from snowflake.core.task import StoredProcedureCall, Task from snowflake.core.task.dagv1 import DAGOperation, DAG, DAGTask from snowflake.core.warehouse import Warehouse
备注
运行此单元格后,系统可能会提示您设置 Python 内核。如果您已激活 conda 环境,请选择 conda 作为 Python 内核(例如类似于这种形式:
~/miniconda3/envs/<your conda env>/bin/python
)。在此单元格中,导入 Snowpark 和管理 Snowflake 对象的核心 APIs。
请在下一个单元格中,运行以下代码:
connection_params = { "connection_name": "default" }
在此单元格中,您可以通过创建
connection_params
字典,并指定先前配置的名为default
的连接定义来为会话设置 Snowflake 连接参数。要与 Snowflake 建立连接,请创建一个 Snowpark 会话并将
connection_params
作为实参传递:session = Session.builder.configs(connection_params).create()
要创建
Root
对象,请将session
对象传递给Root
构造函数:root = Root(session)
这样就搞定了!通过运行这四个单元格中的代码,您现在可以使用 Snowflake Python APIs 了。
下一步是什么?¶
现在,您可以探索 教程 1:创建数据库、架构、表和仓库 了。