问题标签 [bonobo-etl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
164 浏览

python-3.x - 在 Bonobo-etl 的节点中保持本地状态的最佳方法是什么?

如果我有一个包含 20 个数字的输入队列,我怎样才能得到所有数字的总和?到目前为止,这是我想出的:

可以这样做还是有更好的方法?

0 投票
1 回答
199 浏览

python - 如何在活动之间传递包(命名元组)

我是 Bonobo 库的新手并构建了一个简单的流程:

  • 读取一个名为 input.csv 的简单 CSV 文件,标题为:Header1, Header2, Header3, Header4
  • 附加一个新列,它是其他列的串联
  • 将结果写入名为 output.csv 的 CSV 文件

我正在使用 bonobo 的内置 CsvReader 和 CsvWriter 来简化操作。首先,我被 CsvReader 卡住了,没有发送带有单元格的标题,建议的解决方法是添加

@use_raw_input

紧随 CsvReader 之后的转换的注释。但是当将内容传递给下一个活动时,包再次丢失了它的标题并被视为一个简单的元组。只有当且仅当我明确命名字段时它才有效

def process_rows(Header1, Header2, Header3, Header4)

我的代码如下(在 process_rows 中放置一个断点,看看你得到一个没有标题的元组):

感谢您的时间和帮助!

0 投票
0 回答
61 浏览

bonobo-etl - 我不清楚收敛方法

如果可以使这样的事情起作用,那就太好了。目前我不清楚如何实现收敛,除非我使用原始输入并将正在“滴答”的传入边缘的名称嵌入到有效负载中。

目前,此代码将导致一个可以理解但不幸的错误:

0 投票
1 回答
107 浏览

bonobo-etl - 如何在转换之间发送命名元组?

如何从一个 Bonobo 转换中以 namedtuple 形式发送一行?因此,在接收转换中,我可以对行数据进行字段级访问。

我现在使用 dicts 在转换之间发送数据。但是它们有一个缺点:它们是可变的(如果您忘记在转换输出处创建一个新的,则可能会发生坏事)。

我认为简单地用一个命名元组替换一个字典就可以了,但显然 Bonobo 不支持发送一个命名元组。我读了一些关于 context.set_output_fields[list of keys]) 的内容,但不知道如何使用它。一个小例子会很棒!

0 投票
1 回答
135 浏览

python - Stripping '�' from a string in python

0 投票
1 回答
203 浏览

bonobo-etl - 转换后写入表(bonobo-sqlalchemy)

我正在尝试读取一个表,修改一个列并写入另一个表。我遵循了可用的文档并运行了以下代码。它没有给出任何错误,但任务也没有得到执行。

我尝试删除转换步骤,然后写入信息。

输出: - Select in=1 out=6 [done] - format_for_db in=6 out=6 [done] - InsertOrUpdate in=6 out=6 [done]

0 投票
1 回答
74 浏览

bonobo-etl - 预览流经 bonobo-etl ETL 图的数据

Pentaho 数据数据集成有一个很好的功能,允许您预览每个转换步骤的数据输出。

bonobo-etl 中是否有类似的功能?

0 投票
1 回答
55 浏览

bonobo-etl - bonobo-etl Tee 节点的用途

一个tee操作应该接受一个输入并返回两个副本输出。

我注意到 bonobo-etl具有 Tee 节点,但不清楚它们的用途。

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

0 投票
1 回答
282 浏览

python - Bonobo ETL:如何在执行期间为所有节点提供全局上下文?

为所有节点提供某种全局上下文的最佳方法是什么,比如说我正在处理一个文件,我有一个对象来表示文件,带有属性等,我希望能够在每个节点中访问它?

0 投票
1 回答
129 浏览

python - 使用 bonobo_sqlalchemy (ETL) 在 Bonobo 中进行跨数据库连接

我一直在尝试在 Bonobo 中加入不同的数据源(MySQL 和 PostgreSQL),但到目前为止我一直在努力处理并行问题,如果 bonobo 是最合适的工具来做到这一点

我知道我可以用这样的方式获取 Bonobo 数据

但是在我的情况下,真正需要的是将这个提取与另一个表中找到的另一个数据连接起来(这可能是 dask/pandas 中的连接)

我知道我可以用这样的方式获取 Bonobo 数据

在我看来,这有两个问题:

  1. 在像倭黑猩猩这样的并行/分布式提取中加入这样的表是没有意义的;
  2. sqlalchemy 的 bonobo 实现是为使用多处理/线程而构建的;

我怎样才能让它工作?我应该转向另一个工具吗?