当前位置:  开发笔记 > 编程语言 > 正文

ETL框架需要哪些功能?

如何解决《ETL框架需要哪些功能?》经验,为你挑选了1个好方法。

我正在编写一个ETL(在带有mongodb后端的python中)并且想知道:ETL应该被称为ETL的标准函数和工具是什么?

该ETL将尽可能通用,采用可编写脚本的模块化方法.它主要用于保持不同的数据库同步,以及以不同的格式导入/导出数据集(xml和csv)我不需要任何多维工具,但它有可能以后需要它.



1> S.Lott..:

让我们暂时考虑ETL用例.

    提取.

    通过通用DB-API适配器读取数据库.

    通过类似的适配器读取平面文件.

    通过类似的适配器读取电子表格.

    洁净.

    任意规则

    过滤并拒绝

    更换

    添加数据列

    档案数据.

    统计频率表.

    转换(请参阅清理,它们是具有相同实现的两个用例)

    进行维度一致性查找.

    替换值或添加值.

    骨料.

    在管道中的任何一点

    加载.

    或者准备一个平面文件并运行DB产品的加载器.

此外,还有一些额外的要求不是单一用例.

每个单独的操作必须是一个单独的进程,可以在Unix管道中连接,各个记录在进程之间流动.这使用了所有 CPU资源.

对于无法推理出ETL前置条件的地方,您需要某种基于时间的调度程序.

对于可以找出ETL处理步骤的前提条件的场所,您需要基于事件的计划.

注意.由于ETL是I/O绑定的,因此多线程对您没有好处.由于每个进程运行很长时间 - 特别是如果要处理数千行数据 - "重量级"进程的开销不会受到影响.

推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有