Snowflake 数据平台概览

Snowflake是一个完全托管的云数据平台,用户无需安装任何硬件或软件即可使用。对于习惯于SQL开发的人员来说,Snowflake的优势在于其自动处理查询性能优化和维护升级,且不支持本地部署环境。Snowflake支持多种工作负载,包括数据工程、数据湖、数据仓库、数据科学、数据应用和数据交换。

Snowflake的架构

Snowflake的内部架构由三层组成:数据库存储层、查询处理层和云服务层。数据库存储层利用AWS、GCP或Azure等云存储服务,用户无需了解具体的云存储细节,因为这些都由Snowflake完全管理。查询处理层包含多个虚拟仓库,用于处理查询,每个虚拟仓库之间相互独立。云服务层则是一个协调服务,包括认证和访问控制、基础设施管理、优化器、元数据管理以及安全等组件。

创建免费试用账户

Snowflake为新用户提供了400积分的免费试用账户,有效期为一个月。用户需要登录到指定的URL,并提供必要的信息,如姓名、邮箱、公司名称等,然后选择账户类型和云服务提供商及区域。完成这些步骤后,用户会收到一封邮件以激活账户,并设置用户名和密码。登录后,用户可以在基于Web的用户界面上快速了解Snowflake,并执行各种操作。

初学者实践

打开工作表并粘贴以下命令,使用RUN选项执行这些命令。

use role accountadmin; # 创建一个名为test_warehouse的仓库 create warehouse if not exists test_warehouse warehouse_size ='SMALL' auto_suspend=300 initially_suspended=true; USE WAREHOUSE TEST_WAREHOUSE # 创建一个名为testdb的测试数据库 create database testdb; # 检查数据库是否成功创建 show databases like 'test%'; USE DATABASE testdb # 创建一个名为testschema的测试模式 create schema testschema; # 检查模式是否成功创建 show schemas; USE SCHEMA testschema # 创建一个包含empid和empname两列的员工表 create or replace table test_emptable (empid number,empname varchar); # 向员工表中插入样本数据 insert into test_emptable values(1,'Micheal'); insert into test_emptable values(2,'Nick'); insert into test_emptable values(3,'George'); # 检查表是否成功创建 show tables like 'test_emptable'; # 显示表的内容 select * from test_emptable

在上述代码中,使用了accountadmin角色,这是一个高级别的角色,可以访问所有对象。然后创建了一个名为“test_warehouse”的仓库,并在该仓库中创建了一个名为“testdb”的数据库。在该数据库中,创建了一个名为“testschema”的样本模式,然后创建了一个员工表并插入了数据。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485