在Spark中执行行式计算的最佳方法是什么?以下详细信息

时间:2017-07-10 05:13:54

标签: scala apache-spark hdfs spark-dataframe yarn

好的,我的情况是我的数据框有以下架构:

Customer_Id Role_Code Start_TimeStamp End_Timestamp

Ray123          1          2015            2017

Kate123         --         2016            2017

我希望根据一些条件决定给定客户的Role_Code(比如"Ray123")。让我们说他的Role_Code是1.然后我处理下一行,然后下一个客户(说" Kate123")与Ray123重叠,然后她可以挑战Ray123并可能赢得反对他有Role_Code 1(基于其他一些条件)。因此,如果她获胜,在重叠时间段内,我需要将Ray123的Role_Code设置为2,以便数据如下所示:

Customer_Id Role_Code Start_TimeStamp End_Timestamp

Ray123         1           2015            2016

Ray123         2           2016            2017

Kate123        1           2016            2017

有类似的事情发生在我需要来回拣选行并比较时间戳和其他一些字段,然后采取工会并做除了等等以获得具有正确集合的正确客户集的最终数据框角色代码问题是,如果我有5-6行,解决方案工作正常,但如果我测试例如。 70行,YARN容器杀死了作业,它总是耗尽内存。我不知道如何解决这个问题,如果没有像head(),first()等多个动作来处理每一行然后有效地分割行。 似乎其他一些框架更适合这种情况。我感谢任何建议!

0 个答案:

没有答案