我需要在hadoop中与AUTO_INCREMENT
id等效的SQL。
当我的化简任务识别新项目时,这些项目需要分配一个唯一的ID。
我如何在整个群集中共享一个原子计数器?记者计数器似乎只是增量计数器,没有我看到的getAndIncrement功能。
我如何在作业的地图/缩小阶段之前设置该计数器开始吗?
要执行分布式ID生成,您可以只生成uuid或使用Apache Zookeeper中提供的功能,这些功能可以在Hadoop集群上进行分布式协调。免责声明:我从未使用过Zookeeper,所以我不知道您是否真的可以(甚至从理论上)获得全局的连续id集,这就是问题[[似乎要问的问题。
但是,生成UUID确实要付出代价;他们需要一些时间来生成。有关分布式ID生成的一般信息,请参阅this Stack Overflow question。>