我正在设计一个必须托管在 Google Cloud SQL 和 Google Datastore 上的全球 ERP/调度系统。
在大多数情况下,数据是强相关的,并且数量不大或不稳定,因此非常适合关系数据库。
当前的设计将地址本地存储在 customer、contract、employee、site、workorder、contractedSites 表中......总共大约 12 个不同的地方。我要求 DEV 团队修改设计以创建一个可以被所有其他实体引用的 ADDRESS 表(如果需要,可以使用链接表为地址历史、多个地址等提供灵活性)。
问题 - 由于所有这些场景、不同国家和多个电话号码等的地址/联系方式格式差异很大,我认为应该将 ADDRESS 和 CONTACTDETAILS 移动到 DataStore 并通过来自 Cloud SQL 平台的 id 引用它们。因此,该结构完全灵活,可以适应世界各地的地址格式。
这听起来是明智的还是它过度设计了解决方案并且应该只使用 CLoud SQL 中的通用地址表?
我担心 Google 平台中的瓶颈似乎是单个 MySQL 主服务器。这是一项仅限于 16 个 vCPU 的托管服务,因此我正试图将更多功能区域移动到数据存储区中。
希望这是有道理的!