如果我们有 PL/SQL 种语言,为什么要 odi

Why odi if we have PL/SQL lanuguage

有人问我,如果我们有 PL/SQL 代码,为什么还需要 ODI 工具。 Odi 正在后端生成 PL/SQL 代码。为什么我们需要 ODI 接口 如果我们可以使用 odi 接口生成的代码,即使使用 on step less 而不是将数据放入 I$ table 我们可以直接用 PL/SQL.

推送它

让我们举个例子: 如果我们必须将 2000 条记录从一个 table 插入另一个 table,我们可以直接使用 PL/SQL 代码而不是设计 odi 接口,这让我困惑地认为 odi 比一个工具更好.

有很多话要说,但我可以向您提一下我认为最重要的方面:

  • 在 ODI 中,您可以编写 KM's(知识模块 - 一些 SQL/OS commands/Groovy/Java 通用代码,根据源和目标生成您需要的语句 tables/table).创建后,您可以在许多映射中使用它。总结:一次编写,多次使用;
  • ODI有一个API:有了它,你可以自动生成mappings/objects。因此,您无需手动创建 100 个映射(例如),而是维护一个元数据存储库,您可以从中自动生成映射;
  • 事实上,您可以将 sql 与 Groovy 结合使用,这给了您这样的力量,这是您在其他 ETL 工具中找不到的(据我所知);
  • ODI Contexts - 允许您运行在不同服务器上或并行工作的相同映射;

对于您的示例,很明显很容易通过 sql,如果是一次的话。但是如果你有10个类似的sql要构建,你可能会节省一些时间写一个满足你愿望的KM然后generate/create 10个映射。

还有很多话要说。如果您需要,我可以将此 post 扩展更多。欢迎告诉我。