Sql 数据库设计与开发;第三方集成

Sql 数据库设计与开发;第三方集成,sql,database,database-design,relational-database,Sql,Database,Database Design,Relational Database,我们正在构建一个应用程序,电子商务所有者可以从不同平台(如Shopify、Magento、Woocommerce)连接他们的商店。我们这样做是为了从这些不同的平台导入数据 所以我们有一个存储表。在这里,我们有所有平台通用的数据和一些特定于平台的数据 我不知道该怎么办。我们应该创建包含平台特定信息的特定表,还是创建列来存储某些信息,但对于其他平台的存储,这些信息将为空 利与弊是什么?知道如果我们选择选项2,那么我们将需要为所有与之集成的新平台创建表。您没有说您正在使用哪种特定的RDBMS,但是使用

我们正在构建一个应用程序,电子商务所有者可以从不同平台(如Shopify、Magento、Woocommerce)连接他们的商店。我们这样做是为了从这些不同的平台导入数据

所以我们有一个
存储
表。在这里,我们有所有平台通用的数据和一些特定于平台的数据

我不知道该怎么办。我们应该创建包含平台特定信息的特定表,还是创建列来存储某些信息,但对于其他平台的存储,这些信息将为空


利与弊是什么?知道如果我们选择选项2,那么我们将需要为所有与之集成的新平台创建表。

您没有说您正在使用哪种特定的RDBMS,但是使用PostgreSQL,您可以选择外部数据包装器。这使您可以将来自其他源和API的数据联合到应用程序数据库中,并像读取和写入内部表一样读取和写入外部表(假设外部API允许您修改数据)。使用这种方法,您只需要确保
存储
与外部表中各自的条目正确关联。开发FDW相对容易

如果这不是一个选项:使用列查询是有效的,因为信息就在存储记录中。然而,它可能会变得笨拙,这取决于它的数量,如果你有一个租户在其中一个外部平台上有多个存在——发生了更奇怪的事情——你会遇到一些麻烦。关系表单使得添加和更改对外部平台的支持变得更容易,因为您不必锁定整个租户表来添加或删除列


一开始可能只需要简单的方法,但最终规划表可能是明智的。

您还没有说您正在使用哪种特定的RDBMS,但使用PostgreSQL,您可以选择外部数据包装器。这使您可以将来自其他源和API的数据联合到应用程序数据库中,并像读取和写入内部表一样读取和写入外部表(假设外部API允许您修改数据)。使用这种方法,您只需要确保
存储
与外部表中各自的条目正确关联。开发FDW相对容易

如果这不是一个选项:使用列查询是有效的,因为信息就在存储记录中。然而,它可能会变得笨拙,这取决于它的数量,如果你有一个租户在其中一个外部平台上有多个存在——发生了更奇怪的事情——你会遇到一些麻烦。关系表单使得添加和更改对外部平台的支持变得更容易,因为您不必锁定整个租户表来添加或删除列

一开始可能只需要简单的方法,但最终规划表可能是明智的