数据分享(Data Sharing)

数据分享是云器 Lakehouse 的跨实例数据共享功能,允许在不复制数据的情况下,实时将表或视图分享给其他服务实例。

什么是数据分享

传统的数据共享方式需要将数据从一个系统复制到另一个系统,这不仅消耗存储资源,还需要维护同步链路,数据更新存在延迟。

Lakehouse 的数据分享采用无复制的方式:数据提供方创建 Share 对象并授权,消费方通过

CREATE SCHEMA FROM SHARE
CREATE SCHEMA FROM SHARE
创建只读 Schema 直接访问原始数据。数据变更即时反映,无需同步。

核心原理

Provider Instance Consumer Instance +-------------------+ +-------------------+ | source_table_a | | | | source_table_b | | CREATE | | source_view_c |--- Share --------> | SCHEMA | | | (authorized) | FROM SHARE | | Access Control | | | | | | Read-only Query | +-------------------+ +-------------------+

  • 数据不移动:消费方查询时直接读取提供方的原始数据
  • 实时同步:提供方数据变更,消费方立即可见
  • 权限可控:提供方可随时添加/移除分享的数据对象或消费方实例
  • 只读访问:消费方只能查询,不能修改、删除或二次分享

与数据同步的对比

维度数据分享数据同步
数据复制不复制,直接访问原始数据复制数据到消费方
实时性实时,提供方变更立即可见有延迟,取决于同步频率
存储成本消费方不占用存储消费方占用额外存储
计算成本消费方使用自身计算资源查询同步任务消耗计算资源
数据修改消费方只读,不能修改消费方可修改复制的数据
适用场景跨团队/跨公司数据协作数据迁移、独立分析

核心概念

Share 对象

Share 是数据分享的载体,包含:

  • 数据对象:要分享的表或视图(最多 1000 个)
  • 接收实例:被授权访问的消费方服务实例
  • 权限
    SELECT
    SELECT
    (查询数据)和
    READ METADATA
    READ METADATA
    (查看元数据)

提供方(Provider)

数据的所有者,负责:

  1. 创建 Share 对象
  2. 向 Share 中添加要分享的数据对象
  3. 配置接收实例(消费方的服务实例名称)

消费方(Consumer)

数据的使用者,负责:

  1. 查看被分享的 Share 对象
  2. 执行
    CREATE SCHEMA FROM SHARE
    CREATE SCHEMA FROM SHARE
    创建只读 Schema
  3. 查询被分享的数据

典型应用场景

场景 1:跨企业数据协作

A 企业需要将销售数据提供给合作伙伴 B 企业分析:

  • A 企业创建 Share,将销售表加入 Share
  • A 企业将 B 企业的服务实例添加为接收方
  • B 企业创建 Schema from Share,即可实时查询 A 企业的销售数据
  • 无需建立高成本的实时同步链路

场景 2:集团内跨部门数据共享

集团总部将统一的主数据(客户、产品、地区)分享给各业务部门:

  • 总部创建 Share,包含所有主数据表
  • 将各业务部门的服务实例添加为接收方
  • 各部门实时获取最新主数据,无需各自维护

场景 3:数据产品对外提供服务

数据服务商将处理后的数据产品提供给客户:

  • 创建 Share,包含数据产品表
  • 按客户添加对应的接收实例
  • 客户实时访问数据产品,服务商可随时控制访问范围

注意事项

  • 分享范围限制:一个 Share 最多包含 1000 个表或视图
  • 部分数据分享:如需分享表中的部分数据,建议先创建 View 再分享 View
  • 二次分享禁止:被分享的数据不能再次分享给其他实例
  • 数据复制风险:消费方可以通过
    CREATE TABLE AS SELECT
    CREATE TABLE AS SELECT
    复制数据,提供方需谨慎选择分享范围
  • 工作空间隔离:Share 对象只能包含同一工作空间下的数据对象

操作流程

Provider: CREATE SHARE --> GRANT TO SHARE --> ALTER SHARE ADD INSTANCE | Consumer: SHOW SHARES --> DESC SHARE --> CREATE SCHEMA FROM SHARE --> SELECT

相关文档

联系我们
预约咨询
微信咨询
电话咨询