使用MapReduce为字符串分配唯一的ID



我想运行一个MapReduce作业,我想从给定文件扫描多个列,并为每个列的每个独特值分配一个唯一的ID(索引编号)。主要的挑战是共享相同的ID的相同值,该值与在不同的节点或不同实例上遇到的相同值。

目前,我正在使用Zookeeper共享独特的ID,但这具有其性能影响。我什至将信息保存在当地高速缓存的级别上,以避免多次前往Zookeeper的旅行,以相同的价值。我想探索是否还有其他更好的机制可以做同样的机制。

我可以为您的问题建议两个可能的解决方案

  1. 根据您的价值创建唯一的ID。这可能是较低碰撞率的哈希功能。
  2. 使用比Zookeeper更快的存储空间。您可以尝试使用REDIS(REDIS)(例如REDIS)的简单键值存储来存储值以将ID映射存储。

最新更新