首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bonobo-etl T形节点的用途

bonobo-etl T形节点的用途
EN

Stack Overflow用户
提问于 2019-06-05 17:46:52
回答 1查看 54关注 0票数 0

tee操作需要接受一个输入并返回两个复制输出。

我注意到bonobo-etl features Tee nodes,但还不清楚它们是如何使用的。

它们可以用来将运行的图形分成两个方向吗?或者它们旨在用于加载类型的持久性操作,以便在不停止该特定节点中的数据流的情况下使用?

EN

回答 1

Stack Overflow用户

发布于 2019-06-06 19:26:07

bonobo.Tee(f: Callable)操作只是应用一个函数,并将未经修改的流输入传递到流输出中。

尽管名称显然来自unix工具tee (如您所指出的),但它与bonobo版本并不完全相似,一个输出是流输出,另一个输出只是您使用的callable。这个callable可以向流发送数据,也可以不向流发送数据(而向流发送数据目前是hackish的knid )。

例如,如果您使用Tee(print),那么将有传递到output和print的流。

作为另一个更实际的示例,您应该能够执行以下操作:

代码语言:javascript
复制
import bonobo
import queue

output_queue = queue.Queue()


def get_graph():
    graph = bonobo.Graph()
    graph >> range(100) >> bonobo.Tee(output_queue.put) >> print
    return graph


if __name__ == "__main__":
    with bonobo.parse_args() as options:
        bonobo.run(get_graph())

    while True:
        try:
            print("out:", output_queue.get_nowait())
        except queue.Empty:
            break

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56458061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档