- Snowflake教程
- Snowflake - 主页
- Snowflake - 简介
- Snowflake - 数据架构
- Snowflake - 功能架构
- Snowflake - 如何访问
- Snowflake - 版本
- Snowflake - 定价模型
- Snowflake - 对象
- Snowflake - 表和视图类型
- Snowflake - 登录
- Snowflake - 仓库
- Snowflake - 数据库
- Snowflake - 架构
- Snowflake - 表格和列
- Snowflake - 从文件加载数据
- Snowflake - 有用查询示例
- Snowflake - 监控使用情况和存储情况
- Snowflake - 缓存
- 将数据从 Snowflake 卸载到本地
- 外部数据加载(来自AWS S3)
- 外部数据卸载(到AWS S3)
- Snowflake资源
- Snowflake - 快速指南
- Snowflake - 有用的资源
- Snowflake - 讨论
Snowflake - 从文件加载数据
在数据库中,创建的模式是表的逻辑分组。表包含列。表和列是数据库的低级且最重要的对象。现在,表和列最重要的功能是存储数据。
在本章中,我们将讨论如何将数据存储到 Snowflake 中的表和列中。
Snowflake 为用户提供了两种使用用户界面和 SQL 查询将数据存储到表和相应列中的方法。
使用 Snowflake 的 UI 将数据加载到表和列中
在本节中,我们将讨论使用 CSV、JSON、XML、Avro、ORC、Parquet 等文件将数据加载到表及其相应列中时应遵循的步骤。
此方法仅限于加载最多 50 MB 的少量数据。
以任何格式创建示例文件。创建文件时,请确保文件中的列数与表中的列数匹配,否则加载数据时操作将失败。
在 TEST_DB.TEST_SCHEMA.TEST_TABLE 中,共有三列:ID、NAME 和 ADDRESS。
以下示例数据是在“data.csv”中创建的 -
ID | 姓名 | 地址 |
---|---|---|
1 | 啊 | A B C D |
2 | ab | A B C D |
3 | 啊 | A B C D |
4 | ab | A B C D |
5 | 啊 | A B C D |
6 | ab | A B C D |
7 | 啊 | A B C D |
8 | ab | A B C D |
9 | 啊 | A B C D |
现在,单击顶部功能区中的“DATABSES”图标。单击要上传数据的表名称。它显示列数和定义。
以下屏幕截图显示了加载数据功能 -
重新验证示例文件中的列。单击列名称顶部的“加载表”按钮。弹出加载数据对话框。在第一个屏幕上,选择仓库名称,然后单击下一步按钮。
在下一个屏幕上,通过单击“选择文件”从本地计算机选择一个文件。文件上传后,您可以看到文件名,如下图所示。单击下一步按钮。
现在通过单击+ 号创建文件格式,如以下屏幕截图所示 -
弹出“创建文件格式”对话框。输入以下详细信息 -
名称- 文件格式的名称。
模式名称- 创建文件格式只能在给定模式中使用。
格式类型- 文件格式的名称。
列分隔符- 如果 CSV 文件被分隔,请提供文件分隔符。
行分隔符- 如何识别新行。
要跳过的标题行- 如果提供标题,则为 1,否则为 0。
其他的事情可以保持原样。输入详细信息后单击“完成”按钮。
以下屏幕截图显示了上述详细信息 -
从下拉列表中选择文件格式,然后单击加载,如以下屏幕截图所示 -
加载结果后,您将得到摘要,如下所示。单击“确定”按钮。
要查看数据,请运行查询“SELECT * from TEST_TABLE”。在左侧面板中,用户还可以看到数据库、架构和表的详细信息。
使用 SQL 将数据加载到表和列中
要从本地文件加载数据,您可以执行以下步骤 -
使用 SnowSQL(Snowflake 提供的插件)将文件上传到 Snowflake 的 stage 中。要执行此操作,请转到帮助并单击“下载”,如下所示 -
单击 CLI 客户端 (snowsql),然后单击Snowflake 存储库,如以下屏幕截图所示 -
用户可以移至 bootstrap → 1.2 → windows_x86_64 → 单击下载最新版本。
以下屏幕截图显示了上述步骤 -
现在,安装下载的插件。安装后,在系统中打开CMD。运行以下命令来检查连接 -
snowsql -a <account_name> -u <username>
它会要求输入密码。输入您的Snowflake密码,然后按 ENTER。你会看到连接成功。现在使用命令行 -
<username>#<warehouse_name>@<db_name>.<schema_name>
现在使用以下命令将文件上传到Snowflake阶段 -
PUT file://C:/Users/*******/Documents/data.csv @csvstage;
不要忘记在末尾加上“分号”符号,否则它将永远运行。
文件上传后,用户可以在工作表中运行以下命令 -
COPY INTO "TEST_DB"."TEST_SCHEMA_1"."TEST_TABLE" FROM @/csvstage ON_ERROR = 'ABORT_STATEMENT' PURGE = TRUE
日期将被加载到表中。