【问题标题】:Join tables from multiple remote database连接来自多个远程数据库的表
【发布时间】:2014-12-03 23:23:01
【问题描述】:

我在服务器 A 上有一个 mysql 数据库,在服务器 B 上有一个 postgres 数据库,在服务器 C 上有另一个 mysql 数据库。我需要一种方法来连接三个服务器中的表以获得组合结果。有没有办法在 ruby​​ 中做到这一点?如果不是 ruby​​,任何其他语言也足够了。

我需要加入大约 1000 行数据。加入的数据需要推送到 elasticsearch。我打算使用elasticsearch中的_bulk api来推送它。

【问题讨论】:

标签: mysql ruby postgresql elasticsearch


【解决方案1】:

如果是一次性的,只需从其中两个数据库下载数据并将其上传到第三个。在那里做你的工作。

如果这是一件常规的事情,那么将努力正确地链接数据库可能是值得的。 PostgreSQL 提供了Foreign Data Wrapper 插件,可让您与不同的数据库(PostgreSQL 或其他数据库)对话。一个是mysql_fdw

您为每个远程服务器定义条目、本地用户和远程用户之间的用户映射,然后描述要访问的每个表。之后,您可以将它们视为本地的(当然性能通常会更差)。

理论上,您也可以编写自己的 fdw 插件来链接到 elasticsearch,但目前似乎没有可用的插件。

【讨论】:

    【解决方案2】:

    您可以通过 Microsoft .Net 中的 LINQ 和实体框架来实现

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-02
      • 1970-01-01
      • 1970-01-01
      • 2011-10-03
      • 2011-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多