如何从大数据源中排除重复记录?

gra*_*ras 4 java hadoop deduplication

我已经开始使用以JSON格式到达的大型数据集.不幸的是,提供数据馈送的服务提供了非常重要数量的重复记录.在最右侧,每条记录都有一个唯一的Id号,存储为64位正整数(Java long).

数据每周到达一次,每次交付时记录约10M.我需要从当前交货中排除重复项以及之前批次中的记录.

攻击重复数据问题的强力方法是将Id号推入Java 集.由于Set接口需要唯一性,因此插入期间的失败将指示重复.

问题是:在导入记录时,是否有更好的方法来查找重复的长度?

我正在使用Hadoop来挖掘数据,所以如果有一个很好的方法来使用Hadoop来重复记录这将是一个奖励.

sal*_*der 5

你能创建一个MapReduce任务,其中地图输出有一个唯一ID号的密钥吗?这样,在reduce任务中,您将传递具有该ID号的所有值的迭代器.仅输出第一个值,减少的输出将没有重复.