利用数据共享实现多租户存储模式的分析即服务用例
1. 多租户架构与数据共享概述
在多租户策略中,数据存储在一个共享位置供所有租户使用,这简化了 ETL 摄取管道和数据管理。可以根据租户的流量大小进行分组,例如将低流量的三级租户归为一个消费者,以提供低成本的服务,而高流量的一级租户则拥有自己独立的计算数据仓库。消费者数据仓库可以与生产者在同一 AWS 账户中创建,也可以在不同的 AWS 账户中创建,这样可以为消费者进行单独计费。
1.1 多租户存储模式
多租户存储模式主要有以下三种:
| 模式 | 描述 |
| ---- | ---- |
| 池模型 | 所有租户的数据存储在单个数据库模式中,使用新列(tenant_id)来控制对单个租户数据的访问,通过基于表构建的视图来控制对多租户数据的访问。 |
| 桥模型 | 每个租户的数据存储和访问在同一数据库的不同模式中维护。 |
| 筒仓模型 | 每个租户的数据存储和访问控制在单独的数据库中维护。 |
1.2 数据共享步骤
实现跨数据仓库的数据共享的高级步骤如下:
1. 在生产者中创建数据共享(datashare),并将数据库对象分配给该数据共享。
2. 从生产者向消费者授予对数据共享的使用权限,消费者通过命名空间或 AWS 账户标识。
3. 消费者使用生产者的数据共享创建外部数据库。
4. 消费者通过外部共享数据库查询数据共享中的表,并向其他用户授予访问此共享数据库和对象的权限。
2. 示例数据集与表创建
为了演示多租户架构模式,我们使用修改后的开放大学学
超级会员免费看
订阅专栏 解锁全文
753

被折叠的 条评论
为什么被折叠?



