java Hadoop通过socket在还原程序之间共享数据
我正在开发一个Java MapReduce程序,我想知道是否可以使用socket或任何其他方式在还原程序之间共享数据。如果是通过socket,如何检索操作特定密钥的减速机的ip地址和端口号
提前感谢:)
你可以在下面搜索框中键入要查询的问题!
我正在开发一个Java MapReduce程序,我想知道是否可以使用socket或任何其他方式在还原程序之间共享数据。如果是通过socket,如何检索操作特定密钥的减速机的ip地址和端口号
提前感谢:)
# 1 楼答案
您可以通过自己的自定义套接字进行通信,为了找到运行特定密钥的reducer的特定主机,您可以使用JobClient API查询作业跟踪器,以获得正在运行的作业reducer列表
要找到reducer主机,请通过作业分区程序运行密钥(大多数情况下是散列),确定reducer任务编号(0到num reducers-1),然后找到reducer任务运行的机器(通过JobClient API从作业跟踪器获取)
不过,有些事情需要考虑: