Spark-汇总和汇总儿童的价值

时间:2020-07-06 07:16:04

标签: apache-spark

我处理具有树结构的数据

id  | parent_id |
--- + --------- +
11  | 1         | 
12  | 1         | 
121 | 12        |

现在我必须读取表,按id分组并求和一个bigint类型的列值。最重要的事实是只有叶子-没有子元素的元素才具有指定的值,并且每个父元素都必须是其所有子元素值的总和。最初,所有父母的值都等于null或0。 根

  • 父级1(值= null或0)
    • 孩子11(值= 1)
    • 孩子12(值= 1)
    • 父级13(值= null或0)
      • 孩子131(值= 2)
      • 孩子132(值= 1)
  • 父级2(值= null或0)
    • 孩子21(值= 2)
    • 子级22(值= 1) 分组结果: 根
  • 父1(值= 5(1 +1 + 3))
    • 孩子11(值= 1)
    • 孩子12(值= 1)
    • 父级13(值= 3(2 + 1))
      • 孩子131(值= 2)
      • 孩子132(值= 1)
  • 父级2(值= 3(2 + 1))
    • 孩子21(值= 2)
    • 子级22(值= 1) 非常感谢您的帮助!

0 个答案:

没有答案