常见问题


在数据工厂的使用过程中,会存在横向连接计算错误或者数据流执行失败的情况。

以下是导致计算错误的两种情况:


存在笛卡尔积


出现笛卡尔结果集,导致数据无法计算





① 什么是笛卡尔积?


在数学中,两个集合X和Y的笛卡儿积,又称直积,表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员。

假设集合A={a, b},集合B={0, 1, 2},则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}。


② 什么情况下出现笛卡尔积


笛卡尔积出现在数据工厂中的「横向连接」计算时。

判断是否出现笛卡尔积的 公式 为:


经横向连接计算后的数据总量 >(n+m)*2

n:表A的数据量

m:表B的数据量


③ 应用举例


以下为两个表数据经过横向连接(左连接)后的计算结果:



由于图中横向连接后的数据总量大于(表A+表B)的数据总和的2倍,因此将触发笛卡尔积而计算失败。


注:不论是左连接、右连接还是内连接,只要计算出来的结果符合公式规则,都将触发笛卡尔积限制。


输出数据量超出限制



1.总数据量输出不得超过100万条

通过数据工厂计算的数据最终输出结果上限为100万条,若超过限制则数据流计算将执行失败。


2.输出总数据量不得大于输入总数据量的2倍


如下图,便会导致输出数据总量为输入数据总量的3倍,因此会触发输出数据量的限制,而导致数据流执行失败。


数据源表单字段被删除

当数据源的表单字段删除后,若数据流有关该字段的聚合计算,执行数据流将会失败。

Peach是此帮助页面的作者。如果您对此页面的内容有任何意见,请在下方给她反馈。如需获取即时帮助,请联系技术支持。
本文是否对您有帮助?