Airflow中XCOM的最大内存大小

时间:2019-02-06 01:14:12

标签: airflow

我想知道airflow中的XCOM是否有任何内存大小限制?

3 个答案:

答案 0 :(得分:1)

查看源代码后,看起来没有内容,类型是SQLAlchemy中的大二进制文件。 Code 因此,根据documentation,目标平台使用的是无长度的二进制类型,例如MySQL上的BLOB和PostgreSQL上的BYTEA。

答案 1 :(得分:1)

Airflow 不是一个处理框架。它不是 Spark,也不是 Flink。 Airflow 是一个编排器,它是最好的编排器。在 Airflow 中没有处理大数据的优化,也没有分发它的方式(也许有一个执行器,但这是另一个主题)。如果尝试在任务之间交换大数据,最终会出现内存溢出错误!哦,你知道 Airflow 中的 xcom 限制大小吗?

猜猜看,这取决于您使用的数据库!

SQLite:2 去

Postgres:1 次

MySQL:64 KB

是的,64 KB 用于 MySQL!再次强调,XComs 仅用于共享少量数据。

参考:https://marclamberti.com/blog/airflow-xcom/

答案 2 :(得分:-1)

选中this source code link,您会发现XCOM的最大大小为48KB。

当我尝试保存中间数据时遇到了相同的问题,但是它太大了。当我读取保存的文件时,没有。

所以尝试寻找另一种方法来替换它。