使用 Web 界面加载数据¶
您可以通过 Snowsight 或 Classic Console Web 界面向表中添加数据。
通过这些界面,您可以上传包含结构化数据(包括 CSV 或 TSV 格式)或半结构化数据(包括 JSON、Avro、ORC、Parquet 或 XML 格式)的文件。
您可以从以下位置上传数据:
本地计算机。
现有暂存区。
Snowflake、Amazon S3、Google Cloud Storage 或 Microsoft Azure 上的现有云存储位置,尚未作为外部暂存区添加到 Snowflake(仅限 Classic Console)。
您一次最多可以上传 250 个文件。每个文件最多 250 MB。要加载更大的文件或大量文件,请使用 Snowflake 客户端:SnowSQL。有关更多信息,请参阅 从本地文件系统批量加载。
本主题内容:
使用 Snowsight 加载数据¶
加载数据时,您可以 创建新表,也可以 将数据加载到现有表中。
对于 Snowsight 中的数据加载会话,Snowflake 在 显式事务 中运行所有 SQL 命令。无论您在 ACCOUNT 或 USER 级别为 AUTOCOMMIT 设置了什么值,都将提交这些命令。
使用 Snowsight 创建新表¶
加载数据时,通常可以同时为数据创建和自动配置新表。
登录 Snowsight。
打开 用户菜单,选择至少包含以下权限的账户角色:
对象
权限
备注
数据库
USAGE
架构
CREATE TABLE
暂存区
USAGE
表
OWNERSHIP
在导航菜单中,选择 Create » Table » From File。
随即出现 Load Data into Table 对话框。
选择或创建要在其中创建表的数据库和架构。
使用以下方法之一选择包含数据的文件:
输入新表的名称,然后选择 Next。此时将出现表架构对话框。
Snowsight 检测文件的元数据架构,并返回由 INFER_SCHEMA 函数标识的文件格式和列定义。
查看推断的文件格式、数据类型、列名称和列数据示例。确保所有信息准确无误,并在需要时进行更新。
选择 Load。
Snowsight 加载文件并为该文件创建新表。
使用 Snowsight 将数据加载到现有表中¶
登录 Snowsight。
打开 用户菜单,选择至少包含以下权限的账户角色:
对象
权限
备注
数据库
USAGE
架构
USAGE
暂存区
USAGE
从暂存区加载文件时需要。
文件格式
USAGE
使用 命名文件格式 时需要。
表
INSERT
在导航菜单中,选择 Data » Add Data。
选择 Load data into a Table。此时将出现“Load Data into Table”对话框。
使用以下方法之一选择包含数据的文件:
选择要将数据加载到其中的数据库、架构和表。
选择 Next。“Edit Schema”页面出现在“Load Data into Table”的对话框中。
根据需要进行最终自定义:
从当前数据库中选择 文件格式。
选择要自定义的文件类型,然后选择数据文件的相关设置。
备注
要将 Parquet 数据加载到 Snowflake 管理的 Iceberg 表中,请取消选择 Load as a single variant column?。Snowflake 会将 Parquet 数据直接加载到 Iceberg 表列中。使用 Snowsight 加载 Parquet 文件时,仅支持默认的 LOAD_MODE = FULL_INGEST。有关更多信息,请参阅 COPY INTO <table>。
(可选)选择 格式类型选项 的 :ui:`View options`(示例:指定日期和时间格式或替换无效字符)。
(可选)选择在加载过程中发生错误时应采取的措施。默认情况下,不会从文件加载任何数据。
选择 Table loading methods 的以下选项之一:默认选项为 Append。
Append:在数据加载期间,新数据将附加到现有表中。
Replace:新数据将取代表中的现有数据。
选择其中一个 Match by column names 选项,以自动匹配源文件和目标表。默认选项为 case insensitive。
选择表架构对话框右侧的 Edit Schema 选项卡。您可以看到源文件和目标表之间的任何差异。根据需要进行调整。
如果选择 Table Preview 选项卡,则可以预览传入源文件的数据在目标表中的显示方式。
选择 Load。
Snowsight 加载文件并显示成功插入表中的行数。
使用 Classic Console 加载数据¶
Classic Console 提供了一个向导,用于将有限数量的数据从一小组文件加载到表中。该向导执行的 PUT 和 COPY 操作与使用 SQL 相同,但将两个阶段(暂存文件和加载数据)合并为一个操作,并在加载完成后删除所有暂存文件。
可以从以下文件中加载数据:本地计算机上的文件,或 Snowflake、Amazon S3、Google Cloud Storage 或 Microsoft Azure 上现有云存储位置中已暂存的文件。
选择角色¶
选择具有相应权限的角色。(选择左上角的下拉菜单(在您的登录名旁边)|ra| Switch Role » ACCOUNTADMIN
。)
要加载数据,角色必须具有数据库和架构的 USAGE 权限,且数据库和架构包含将数据加载到其中的表。
要在加载数据时创建暂存区,角色必须具有数据库架构的 CREATE STAGE 权限。
要在加载数据时创建文件格式,角色必须具有数据库架构的 CREATE FILE FORMAT 权限。
选择要在其中加载数据的表¶
选择要加载的数据¶
根据您选择从中加载数据的位置,请执行相关步骤。如果要从多个位置加载数据,请多次使用 Load Data 向导。
要从计算机加载数据,请执行以下操作:
选择 Load files from your computer 选项,然后选择 Select Files,浏览要加载的文件。
选择一个或多个本地数据文件,然后选择 Open。
选择 Next。
要从现有暂存区加载数据,请执行以下操作:
选择 Load files from external stage 选项。
从 Stage 下拉列表中选择现有的暂存区。
(可选)指定暂存区中文件的路径。
选择 Next。
要创建暂存区,例如从外部云存储加载数据,请执行以下操作:
选择 Load files from external stage 选项。
选择 Stage 下拉列表旁边的 +。
选择文件所在的受支持的云存储服务。
选择 Next。
填写描述暂存区的字段。有关更多信息,请参阅 CREATE STAGE。
选择 Finish。
系统会自动从 Stage 下拉列表中选择新的暂存区。
(可选)指定暂存区中文件的路径。
选择 Next。
完成加载数据¶
选择要加载的文件后,完成将数据加载到表中的操作。
备注
如果在完成加载数据时仓库未运行,则必须等待仓库恢复(不超过 5 分钟)后才能加载数据。
要完成加载数据的操作,请执行以下步骤:
从下拉列表中选择现有的命名文件格式,或者创建一个文件格式。
要创建文件格式,请执行以下步骤:
选择下拉列表旁边的 +。
填写字段以匹配数据文件的格式。有关选项的说明,请参阅 CREATE FILE FORMAT。
选择 Finish。
系统会自动从下拉列表中选择新的命名文件格式。
确定如何处理加载数据时发生的错误:
如果希望在发生错误时停止数据加载,请选择 Load。
如果希望以不同的方式处理错误,请执行以下步骤:
选择 Next。
选择描述如何处理错误的选项。有关选项的详细信息,请参阅 COPY INTO <table> 的
ON_ERROR
部分。选择 Load。
Snowflake 使用您选择的仓库将数据加载到您选择的表中。
选择 OK 即可关闭 Load Data 向导。