【问题标题】:Querying data from 2 MySQL Databases to a new MySQL database从 2 个 MySQL 数据库查询数据到一个新的 MySQL 数据库
【发布时间】:2018-06-21 09:48:56
【问题描述】:

我想从两个不同的 MySQL 数据库查询数据到一个新的 MySQL 数据库。

我有两个数据库,其中包含很多不相关的数据,我想创建一个可以被视为数据仓库的数据仓库,其中应该只存在来自这两个数据库的相关数据。

到目前为止,所有数据都已发送到两个旧数据库,但是我希望安排更新,以便新数据库跟上速度。两个数据库之间有一个键,所以在最好的情况下,我希望所有数据都出现在一个表中,但这并不重要。

我在 Logstash 和 ES 上做过类似的工作,但是对于 MySQL,我不知道该怎么做。

【问题讨论】:

    标签: mysql sql database merge data-warehouse


    【解决方案1】:

    最好的方法是使用Pentaho Data Integrator 或任何 ETL 工具创建 ETL 流程。您的源将是两个不同的数据库,在转换部分,您可以删除或添加任何业务逻辑,然后将这些数据加载到新数据库中。

    如果您创建此 ETL,您可以每天安排一次,以便您的数据库是最新的。

    如果您想在没有 ETL 的情况下执行此操作,那么您的数据库必须位于同一主机中。比您可以在查询中的表名之前添加数据库名称。喜欢SELECT * FROM database.table_name

    【讨论】:

    • 谢谢,我现在使用 Pentaho,效果很好!我在更新数据时遇到问题。你知道我如何确保我发送到新数据库的数据与数据库中现有的任何数据都不匹配吗?现在我必须在再次运行转换之前删除数据库中的所有数据,否则由于重复,数据库的大小会加倍。
    • 在这种情况下,您可以将您的数据与现有数据进行比较。 Pentaho Data Integrator 中有一个输入选项,即 Merge Join。在合并连接中,您实际上可以将您的数据与现有数据进行比较。然后有一个过滤选项,您只能过滤新数据并将这些新数据传递到数据库中。
    猜你喜欢
    • 2011-08-24
    • 2023-04-03
    • 2016-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多