Snowflake数据共享:能力、方法与实践
立即解锁
发布时间: 2025-09-03 01:58:46 阅读量: 9 订阅数: 29 AIGC 


Snowflake权威指南精要
### Snowflake数据共享:能力、方法与实践
#### 1. Snowflake数据共享的行业应用
Snowflake的数据共享能力在多个行业展现出了巨大价值。
- **医疗保健和生命科学领域**:该行业长期以来依赖FTP、DVD等陈旧的数据共享方式。如今,存储大量受保护健康信息(PHI)和个人身份信息(PII)的支付方,由于行业数据共享的强制规定和监管要求,正转向Snowflake。医疗服务提供商拥有海量数据,常与医疗联盟合作或隶属于大学,实时数据共享而非批量共享变得至关重要。
- **运输和零售行业**:运输公司可利用物联网数据优化车队路线,零售商能通过与物流伙伴共享数据改善供应链,这些行业都在借助Snowflake的实时数据共享能力。
- **企业公司**:部分企业公司使用不同的Snowflake账户进行开发、测试和生产。数据共享提供了强大的审计控制能力,能以可控方式移动数据,避免了准备平面文件并重新加载到不同环境的麻烦。
- **出版、广告和品牌行业**:随着第三方cookie逐渐被淘汰,这些行业需要迅速开发新的数据共享模式。营销人员需寻找新方法在线识别用户,以优化营销活动并实现个性化消息推送。
#### 2. Snowflake对Unified ID 2.0的支持
- **Cookie技术的局限性**:Cookie是1994年开发的一种软件代码,用于在访问网站时促进回访和跟踪,但如今已过时。互联网使用更多地发生在移动应用和联网电视设备上,Cookie大多已无关紧要。此外,Cookie常包含大量个人数据,可能在用户不知情的情况下识别用户,因此受到欧盟通用数据保护条例(GDPR)和电子隐私指令(EPD)的约束,EPD最终将被电子隐私法规(EPR)取代。主要平台如苹果、火狐和谷歌已开始限制第三方Cookie的使用,未来互联网平台隐私政策的变化可能使Cookie这一互联网首个通用标识符过时。
- **Unified ID 2.0的优势**:由The Trade Desk开发的Unified ID 2.0是一种开源的、行业主导的身份解决方案,为用户提供匿名化、更高透明度和更好的控制权。一个人的UID 2.0是由电子邮件地址生成的随机字符串,无法逆向工程还原为电子邮件地址或其他形式的身份信息。目前,《华盛顿邮报》、甲骨文、尼尔森和Tubi TV等都接受了Unified 2.0。
- **Snowflake的支持作用**:Snowflake支持将Unified ID 2.0用于安全数据共享,特别是在数据洁净室中。Snowflake客户可以在平台上以更注重隐私的方式直接合并第一方和第三方数据,Snowflake数据云和Unified ID 2.0的结合提供了对客户的单一视图。
#### 3. Snowflake安全数据共享方法
Snowflake提供了四种不同的安全数据共享方法,如下表所示:
| 共享方法 | 说明 |
| ---- | ---- |
| 账户到账户数据共享 | 可直接与另一个账户共享数据,数据会出现在对方的Snowflake账户中,无需移动或复制。对方账户可以是不同的内部业务部门或不同的组织。 |
| Snowflake市场 | 一种公共安全数据共享方式,连接全球数据提供商和消费者。 |
| Snowflake私有数据交换 | 可创建自己的私有数据交换,控制谁可以加入数据交换以及哪些成员可以提供数据、消费数据或两者皆可。 |
| 数据洁净室 | 一种在多方之间共享数据的框架,数据根据特定准则汇集在一起,对个人身份信息进行匿名化和处理,并以符合隐私法规的方式存储。 |
#### 4. 准备工作
在开始探索Snowflake安全数据共享方法之前,需要进行一些准备工作:
1. **创建新工作表**:创建一个名为“Chapter10 Data Sharing”的新工作表。如果需要帮助创建新工作表,可参考相关导航说明。
2. **设置角色**:如果使用Snowflake免费试用账户,首次登录时会被分配SYSADMIN角色。使用数据共享需要为角色分配特定权限,除非使用ACCOUNTADMIN角色。在后续操作中,将使用ACCOUNTADMIN角色,可通过下拉菜单或工作表中的SQL语句更改角色。
3. **创建数据库和表**:在新的数据共享工作表中执行以下命令:
```sql
USE ROLE ACCOUNTADMIN;
USE WAREHOUSE COMPUTE_WH;
CREATE OR REPLACE DATABASE DEMO10_DB;
USE SCHEMA DEMO10_DB.PUBLIC;
CREATE OR REPLACE TABLE SHARINGDATA (i integer);
```
4. **查看共享数据**:点击主页图标返回主菜单,然后点击菜单中的“Data → Private Sharing”选项,可查看已共享给当前账户的数据。默认显示“Shared With Me”,若要查看外发数据共享,可点击“Shared By My Account”。
#### 5. Snowflake的直接安全数据共享方法
直接共享是Snowflake最简单的数据共享形式,当Snowflake提供者创建外发数据共享时,该共享会成为消费者Snowflake账户中的内入共享。提供者可通过共享对象共享Snowflake数据库表、安全视图或安全用户定义函数(UDF),需要注意的是,共享并非从对象创建,而是被授予对数据库、模式、表、视图或UDF的权限。
##### 5.1 创建外发共享
- **通过界面操作**:
1. 点击屏幕右上角的“Share Data”按钮,然后点击“Select Data”按钮。
2. 选择DEMO10_DB数据库、PUBLIC模式和SHARINGDATA表,勾选表格旁边的框以将其包含在共享中。
3. 完成后点击“Done”,此时“Secure Share Identifier”字段会自动填充,但可更改标识符。该标识符在创建共享的账户中必须唯一,且区分大小写。也可通过输入所在区域的账户名称将对象共享给特定消费者。
4. 更改自动生成的标识符为“DEMO10_SHARE”,然后点击“Create Share”按钮,将收到共享创建成功的确认信息。
- **通过SQL命令**:在数据共享工作表中执行以下语句:
```sql
USE ROLE ACCOUNTADMIN;
CREA
```
0
0
复制全文
相关推荐










