【问题标题】:PENTAHO data integration data source/destination mappingPENTAHO 数据集成 数据源/目标映射
【发布时间】:2017-07-12 10:35:15
【问题描述】:

我正在联系您,希望找到有关 Pentaho 数据集成器限制的答案。 我目前正在研究 1 对 1 数据源集成,并希望将其设为 n 到 1-n。这需要动态创造就业机会,并且想知道是否有人遇到过这样的问题。我的 1 对 1 工作得很好,它将不同的数据源类型(CSV,数据库“Mysql,Oracle ...)集成到相同的日期目的地,并且需要将其设为 n 到 1-n。

【问题讨论】:

  • n to n-1 是什么?如果我理解,您需要使用不同的参数多次运行转换/作业。但我不确定。能给我举个例子吗 ?假设您的1 to 1 是一个简单的CSV InputTable output
  • 我需要从 n 个数据源(可以是 CSV,DATABESE...)到 n 个数据目标(可以是 CSV,DATABESE...)进行数据提取

标签: mapping integration pentaho etl data-integration


【解决方案1】:

为此有一个元数据注入步骤。

Diethard here 描述了一个与您类似的用例。

因为你有很多不同的源格式,所以阅读步骤作者 Jens 的用例可能是一项不错的投资,here,它(除了自动化)正是你的案例。

【讨论】:

  • 非常感谢 AlainD !这真的很有帮助,因为它几乎正是我想要的。我会努力解决这个问题,并会回复你。再次感谢您
【解决方案2】:

在 Pentaho DI 中的 AFAIK,不可能为任何随机数据源创建动态转换。 PDI 在将数据加载到目标数据库之前,会在输入流中查找可用的输入列。例如,如果您使用 1 个数据源(在 MySQL 中)并将其加载到 csv 输出,则 csv 输出步骤预计数据源步骤(表输入)中存在输入列。如果您尝试加载任何 n 个随机数据源,您需要为每个数据源单独定义输入列/字段。

或者,您可以探索一些东西:

1.文本文件输出中的快速转储步骤:

在文本文件输出步骤中有一个快速数据转储选项。在这里您不需要定义任何输出列。输入字段将自动转储而不按原样格式化。您可以使用它将所有输入源映射为 csv 格式,然后将其加载到它们的目标。

2。将 Java 和 Kettle 一起扩展以构建解决方案:

PDI 允许您在水壶上创建自定义 JAVA 代码。您可以查看this blog 了解更多信息。您可以使用这个想法创建自定义代码,将 n 个数据源字段作为参数传递给水壶并执行它们。 {注意:我没有尝试这一步,只是在这里大声思考}

希望这会有所帮助:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多