我是数据库管理员,所以Java对我来说是新手。寻找用于HDFS的脚本语言,可能是我正在寻找的Python。但是我在上一个问题中看到,您提到如果使用脚本语言,“名称”和“数据”节点之间的“Heart Beat”将不会发生。为什么,我听不懂?当我们编写应用程序逻辑来处理脚本或Java代码中的数据时,它对“Heart Beat”有何影响?
有什么想法吗?
最佳答案
如果您已经知道如何使用它编写代码,那么Python是hadoop的不错选择。我已经成功使用了php和perl。 Hadoop框架的这一部分称为Streaming。
对于“Heart Beat”,我相信您正在考虑Counters。它们是用户定义的“变量”,只能递增。如果10分钟内没有计数器增加,则Hadoop将终止任务尝试。但是,您不必为此担心,因为有些系统计数器会自动为您增加。如果您确实需要花费很长时间,则仍可以通过将以下内容发送到标准错误输出中来将计数器与Python(Hadoop Streaming)结合使用:
reporter:counter:MyGroup,MyCounter,1
有关Hadoop Streaming计数器的更多信息,请参见this
关于hadoop - HDV映射/缩减的Java与脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24740542/