作为一个组织,我们正朝着购买 ODI 作为 ELT 工具的方向发展。我们有大量的 PLSQL 资源,但我听说 ODI 在数据操作方面足够强大,可以取代以前在 PLSQL 中所做的大部分工作。
它的优势是什么?和弱点?它可以完全取消在 PLSQL 中对数据转换进行编码吗?
作为一个组织,我们正朝着购买 ODI 作为 ELT 工具的方向发展。我们有大量的 PLSQL 资源,但我听说 ODI 在数据操作方面足够强大,可以取代以前在 PLSQL 中所做的大部分工作。
它的优势是什么?和弱点?它可以完全取消在 PLSQL 中对数据转换进行编码吗?
不,它不是,但是你在这里可能是 99% 正确的。这实际上是一个棘手的问题,因为 PL/SQL 也可能由 ODI 提交。
我会保留它(PL/SQL)来定义函数/过程(如果你真的需要),以便稍后由 ODI 调用。这绝不应该是与 ETL 直接相关的东西,例如 INSERT INTO ... SELECT ... FROM ... - 这就是 ODI 完全符合要求的地方。
在我的 ODI 经验(9 年)中遇到的唯一合理的案例是: - 创建 PL/SQL 函数来验证(然后通过 OBIEE 授权)LDAP/AD 用户 - 创建稍后由 ODI DQ 调用的辅助函数(CKM ) 模块,如 is_number、is_date - 直接由 DB 创建 XML 文件(即使没有 ODI XML 驱动程序,您可能仍然会发现最好使用本机 DB XML API/功能来生成 XML) - 出于性能原因。其他直接文件操作(加载/卸载)可以通过这种方式完成。- 出于性能原因创建我自己的(优化的)层次结构遍历查询(将标准 Oracle SQL 的“递归子查询分解”功能击败到大约 1000:1)
如果您想通过使用 PL/SQL 来创建可重用的逻辑并从 ODI 调用它或直接从 ODI 编码(以 PL/SQL 形式),这取决于您