我正在设计一个移动应用程序,我需要在其中托管我的供应商数据,并在分析后仅允许指定用户访问该数据。由于我将拥有多个具有不同数据集和用户的供应商,我应该拥有每个供应商的多个数据库 1 还是具有不同模式的 1 个数据库?我计划在 Google Cloud Platform 上运行该应用程序并使用 Google Cloud SQL。
使用单一数据库托管多个供应商数据的优点和缺点是什么?
我正在设计一个移动应用程序,我需要在其中托管我的供应商数据,并在分析后仅允许指定用户访问该数据。由于我将拥有多个具有不同数据集和用户的供应商,我应该拥有每个供应商的多个数据库 1 还是具有不同模式的 1 个数据库?我计划在 Google Cloud Platform 上运行该应用程序并使用 Google Cloud SQL。
使用单一数据库托管多个供应商数据的优点和缺点是什么?
使用单一数据库的优势在于拥有单一模式和单一代码库。如果您进行更改,那么所有供应商都会得到更改。(如果他们不喜欢这种变化,这也可能是一个缺点)。
除此之外,缺点是如果供应商有明显不同的要求并且需要不同的模式和/或他们以不同的方式解释数据。但是,如果他们中的一些人想要更改架构或代码,那么您必须管理所有不同的版本。
通过使用正确的查询,可以很容易地为给定的用户提供给定供应商的数据。除非您想将大部分时间花在管理版本上,否则您可能希望使它们全部与相同的模式和代码保持同步。