【发布时间】:2022-01-29 05:37:03
【问题描述】:
关于在 SQL 服务器上将新旧数据源集成在一起,有人可以与我分享任何最佳实践吗?
澄清一下,我的公司从供应商 A 接收信息,但我们正在过渡到供应商 B。两家供应商都向我们提供了相似的客户和交易数据(例如:帐号、地址等),但架构和数据深度和广度之间供应商非常不同。此外,供应商 A 和 B 之间的帐号等关键项目也不相同;所有客户都会收到一个新的帐号。我需要能够将历史和当前/未来的结果联系在一起。
想到的几个选项是......
-
创建一组 SQL 视图,将供应商 A 和 B 的表之间的数据重新格式化为类似的格式(即使它们的源架构不同)。
-
将来自供应商 A 和 B 的数据纯粹视为临时表数据 - 并创建一组新表,我可以在其中组合来自供应商 A 和 B 的数据,其中两个来源具有共享列。这样,如果供应商 C 出现,SQL 服务器中使用的数据将采用相同的格式并使用相同的列名。
这两个选项看起来都很混乱,而且各有利弊。不确定是否还有其他选择......或者人们是否自己遇到了这个决定点。
感谢任何帮助。谢谢!
【问题讨论】:
-
没有实际的用例,很难说,纯粹基于意见。还有第三种选择...将供应商 A 转换为供应商 B 并继续前进。
-
谢谢,@JohnCappelletti。抱歉,我知道这个问题有点模糊。用例多种多样。在某些情况下,我需要混合来自供应商 A 和 B 的交易销售数据(例如:想象一个销售随时间变化的折线图,其中一部分销售活动分别属于供应商 A 和 B)。对于其他情况,供应商 A 和 B 记录的客户活动和人口统计数据并不完全一致——例如,两家供应商都没有记录相同类型的选择。无论哪种方式,你都是对的......将旧数据重新格式化为新格式是另一种选择。再次感谢!
标签: sql sql-server database database-design schema