【发布时间】:2017-08-11 15:14:56
【问题描述】:
我们正在探索在 Spanner 中可靠地隔离客户数据的选项。最明显的解决方案是每个数据库一个客户,但是 100 个数据库/实例的限制使这种做法变得不切实际。过去的经验让我非常怀疑任何将客户 ID 字段添加到每个表的主键的计划,因为在 SQL 查询中很容易搞砸,从而导致危险的数据串扰。
我正在考虑奇怪的解决方案,例如使用所有 2k 表/实例,并为每个客户获取我们需要的约 32 个表并为 那些添加前缀。例如,[cust-id]-Table1、[cust-id]-Table2 等。至少可以将需要铁定的客户隔离逻辑放在一个很难在查询中搞砸的地方。但是有人知道一种不那么奇怪的方法吗?例如,“100”在技术限制中是一个可疑的非整数 - 是否可以以某种方式调整?
【问题讨论】:
标签: google-cloud-platform google-cloud-spanner