使用SSIS整合两个数据库之间的数据
Using SSIS to integrate data between two databases
我们有两个 SQL 服务器应用程序数据库,它们当前通过点对点 SQL 查询(从 A 拉到 B)共享数据。 B库中的这个SQL,运行,用于周期性的从A库中的多个表中抽取、转换、加载数据到B中的表中;在流程中有效地执行一些业务规则。
不幸的是,这个过程非常脆弱,加载经常失败,审计很少等导致 SQL 脚本无休止的调整。长话短说,我们正在寻找其他方法来实现这两个数据库之间的数据集成。
我们正在研究的一件事是使用 SSIS 定期将数据从数据库 A 加载到数据库 B。我们已经使用 SSIS 将数据从数据库 A 提取到数据仓库,用于查询、分析等。这里的数据几乎与我们为 A 和 B 之间的集成所做的 ETL 相同。
我的问题是,在这种情况下什么是好的做法?我们能否将数据仓库重新用作 B 的集成点(即将数据从数据仓库拉到 B),或者这种糟糕的做法是否使数据仓库成为公司集成架构的一部分?
与许多事情一样:这完全取决于。使用数据仓库作为集成源与使用非仓库数据库一样有效。它归结为准确性和刷新间隔。在使用一个数据源而不是另一个数据源之前,您应该问自己一些问题:
- 我需要准确的数据吗?
- 我的数据源是否足够频繁地更新?
- 哪个数据源是 source of truth?
- 我需要访问非常古老的历史数据吗?
- ...
使用数据仓库是不错的做法。
我们有两个 SQL 服务器应用程序数据库,它们当前通过点对点 SQL 查询(从 A 拉到 B)共享数据。 B库中的这个SQL,运行,用于周期性的从A库中的多个表中抽取、转换、加载数据到B中的表中;在流程中有效地执行一些业务规则。 不幸的是,这个过程非常脆弱,加载经常失败,审计很少等导致 SQL 脚本无休止的调整。长话短说,我们正在寻找其他方法来实现这两个数据库之间的数据集成。
我们正在研究的一件事是使用 SSIS 定期将数据从数据库 A 加载到数据库 B。我们已经使用 SSIS 将数据从数据库 A 提取到数据仓库,用于查询、分析等。这里的数据几乎与我们为 A 和 B 之间的集成所做的 ETL 相同。
我的问题是,在这种情况下什么是好的做法?我们能否将数据仓库重新用作 B 的集成点(即将数据从数据仓库拉到 B),或者这种糟糕的做法是否使数据仓库成为公司集成架构的一部分?
与许多事情一样:这完全取决于。使用数据仓库作为集成源与使用非仓库数据库一样有效。它归结为准确性和刷新间隔。在使用一个数据源而不是另一个数据源之前,您应该问自己一些问题:
- 我需要准确的数据吗?
- 我的数据源是否足够频繁地更新?
- 哪个数据源是 source of truth?
- 我需要访问非常古老的历史数据吗?
- ...
使用数据仓库是不错的做法。