【问题标题】:Accessing one database from another从另一个数据库访问一个数据库
【发布时间】:2018-02-27 13:38:07
【问题描述】:

我有两个数据库,其中一个数据库中的一个表大约有 600 万条记录,而另一个数据库中的另一个表大约有 6000 条记录。我需要从包含 600 万条记录的表中获取所有匹配的记录。

除了DB链接还有什么办法吗?

【问题讨论】:

  • 定义“匹配”——它不是一个标准的技术术语。
  • 两个表的一列数据相同

标签: sql database oracle11g informatica


【解决方案1】:

有几种方法可以使用 Informatica...这样,当您运行查询时,连接将有助于优化源限定符,只要您在连接条件字段上定义了正确的索引,一切都会变得很重要

另一种方法是在源限定符中查询 6000 行表,并使用配置为返回多个匹配项的多行的查找转换针对 600 万行表查找匹配行。如果您可以毫不费力地缓存 6M 记录或处理 6000 个对数据库的查询而几乎没有时间命中,那么试试这个,但多返回查找比标准查找更挑剔,所以我会避免,因为下一个家伙可能不会得到它

【讨论】:

  • 您对将 6000 行表作为查找表有何想法?我想这对内存要求会更轻,而且 6M 行需要以任何一种方式读取,所以……你有什么理由完全相反吗?我认为 6000 行的查找很容易被缓存。
  • 当然,我宁愿查询 600 万条记录表/缓存 6000 次,也不愿查询 6000 条记录表/缓存 600 万次...假设索引等实际缓存大小将被分解这样实际发出的查询数量将承担大量开销。如果您阅读我的完整帖子,您会发现我不希望通过以某种方式将所有数据一起存在于一个数据库中,这将启用数据库本身的连接以减少完全读取的记录数量(而您不这样做)不必以这种方式提取所有 600 万条记录)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多