gpt4 book ai didi

hadoop - 在Spark中按用户ID分组

转载 作者:行者123 更新时间:2023-12-02 21:22:08 25 4
gpt4 key购买 nike

我有10个具有相同架构的文件:

user_Id,time_stamp,event_type,描述,other_columns

它们存储在10个文件中,因为它们来自10个不同的来源。为了进行一些分析,我需要将同一用户的数据(记录)分组在一起并产生一些值(计算逻辑相当复杂,无法通过reduceByKey来完成)。所以我在Spark中使用groupByKey()。由于混洗,这非常耗时。任何想法如何使它更快?在此阶段,计算将完全在具有相同用户ID的记录中进行。顺便说一句,我可以和数据提供商谈谈,要求他们准备某种格式的数据。

最佳答案

我认为当您将文件读入RDD时,可以在分区中使用相同的用户ID进行相同的记录。例如,假设您要为RDD创建20个分区,则可以在记录中获取用户ID的哈希码,然后使用hashcode % 20将此记录分配给其中一个分区。它可以确保具有相同用户ID的记录进入相同的分区。

关于hadoop - 在Spark中按用户ID分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36992088/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com