我是hadoop新手,在aws elastic mapreduce下运行。我需要在hadoop中使用集群范围的原子计数器,建议使用zookeeper。我相信zookeeper是hadoop堆栈的一部分(对吧?),我如何从ElasticMapReduce作业访问它以设置和更新集群范围的计数器?
cyej8jka1#
你可以,praveen sripati回答。但我不想澄清以下几点:请记住,zk的写速率是有限的(每秒约300个请求)客户端可以看到过时的数据(zk不能保证跨副本的读取一致性)。我建议使用专用的sequence generator服务器,它将为您生成序列(这个服务可以使用zk或任何它想要的东西)。此类服务的一个例子:https://github.com/kasabi/h1
u4dcyp6a2#
我相信zookeeper是hadoop堆栈的一部分(对吧?)zookeeper(zk)不是hadoop堆栈的一部分。它是apache下的顶级项目(tlp),独立于hadoop。所以,第一个zk必须安装在ec2上。这里有同样的说明。如何从弹性mapreduce作业访问它,以便设置和更新集群范围的计数器?一旦安装了zk,就可以使用zkapi生成集群范围的计数器。这里(1和2)讨论了该方法的利弊。以下是zk的一些其他替代方案,以满足相同的需求。
2条答案
按热度按时间cyej8jka1#
你可以,praveen sripati回答。但我不想澄清以下几点:
请记住,zk的写速率是有限的(每秒约300个请求)
客户端可以看到过时的数据(zk不能保证跨副本的读取一致性)。
我建议使用专用的sequence generator服务器,它将为您生成序列(这个服务可以使用zk或任何它想要的东西)。此类服务的一个例子:https://github.com/kasabi/h1
u4dcyp6a2#
我相信zookeeper是hadoop堆栈的一部分(对吧?)
zookeeper(zk)不是hadoop堆栈的一部分。它是apache下的顶级项目(tlp),独立于hadoop。所以,第一个zk必须安装在ec2上。这里有同样的说明。
如何从弹性mapreduce作业访问它,以便设置和更新集群范围的计数器?
一旦安装了zk,就可以使用zkapi生成集群范围的计数器。这里(1和2)讨论了该方法的利弊。以下是zk的一些其他替代方案,以满足相同的需求。