设计策略:跨2个不同的数据库查询和更新数据

asy*_*007 5 c# sql-server oracle data-access-layer

我们需要在两个不同的数据库中查询数据(SQL Server中的1个和Oracle中的其他数据库).

以下是需要实施的方案:

  1. 查询:从一个数据库获取数据并匹配其他数据库中的值
  2. 更新:从一个数据库获取数据并更新其他数据库中的对象

我们正在使用的技术:ASP.net,C#

我们考虑过的选项:

  1. 在一个数据库中暂存区域
  2. 链接服务器(由于组织范围的策略,不能采用该方法)
  3. 创建Web服务
  4. 使用DAL中2个来源的数据创建2个不同的DAL并执行列表操作

我想知道处理这种情况的最佳设计策略是什么?如果是,那么该方法的优缺点是什么

Pen*_*old 0

其中一个数据库的结果是否足够小以有效地传递?

如果是这样,我建议将数据库视为两个独立的数据源。

如果数据集很大,那么您可能必须考虑将某种形式的 ETL 放入其中一个数据库的暂存区域中。如果您需要查询从两个数据库返回最新数据,则可能会遇到问题。因为您需要进行实时 ETL。