Hadoop:如何创建自动增量ID

问题描述 投票:3回答:1

我需要在hadoop中与AUTO_INCREMENT id等效的SQL。

当我的化简任务识别新项目时,这些项目需要分配一个唯一的ID。

  • 我如何在整个群集中共享一个原子计数器?记者计数器似乎只是增量计数器,没有我看到的getAndIncrement功能。

  • 我如何在作业的地图/缩小阶段之前设置该计数器开始吗?

hadoop mapreduce auto-increment
1个回答
2
投票

要执行分布式ID生成,您可以只生成uuid或使用Apache Zookeeper中提供的功能,这些功能可以在Hadoop集群上进行分布式协调。免责声明:我从未使用过Zookeeper,所以我不知道您是否真的可以(甚至从理论上)获得全局的连续id集,这就是问题[[似乎要问的问题。

但是,生成UUID确实要付出代价;他们需要一些时间来生成。

有关分布式ID生成的一般信息,请参阅this Stack Overflow question。>

© www.soinside.com 2019 - 2024. All rights reserved.