用于摄取不同数据源的架构建议?

时间:2014-12-09 23:04:49

标签: xml xslt architecture

问题描述: 我必须从多个来源摄取数据源并对它们进行ETL并将它们存放在Oracle数据仓库中。文件本身是.csv文件。这些文件具有不同的格式,属性和值。

为了论证,我们说有3种不同类型的文件:

  • File1 - 我每天都会收到一个这种类型的新文件。 USER_ID,名字,姓氏

  • File2 - 我每周都会收到一个这种类型的新文件:order_id,
    order_date,order_amount

  • File3 - 我每个月都会得到一个这种类型的新文件:part_id,
    part_name,part_description

最简单的方法是获取此数据并将其提供给ETL步骤?我如何编码,实现可用于所有类型文件的解决方案,甚至是当前未知类型的File4?

我在考虑将XSLT和XPath作为可能的解决方案。将.csv文件转换为XML,然后为每种文件类型编写一个XSLT模板。我在这里走在正确的轨道上吗?还有哪些其他技术/工具可以帮助我?

任何建议都非常感谢。

1 个答案:

答案 0 :(得分:0)

我曾经使用Talend Studio进行数据集成来构建ETL作业: https://www.talend.com/products/data-integration

它是ETL最重要的开源工具之一,学习曲线非常快,它看起来非常适合您所描述的工作:您可以阅读csv,进行所有转换然后直接在Oracle DB上加载结果结果。 它基于Java,但您不会编写代码行(只是一些基础知识)。完成作业后,您可以将它们导出为脚本(.sh或.bat)并安排它们。