我现在在伪分布式模式下使用 hadoop。我尝试了一些mapreduce,将其打包为jar,并将文件复制到hadoop。然后使用
./bin/hadoop 罐子*
开始它。
我的问题是:还有其他方法吗?如果我们有数千个工作要运行。我们不能只输入命令。我们在生产环境中做什么?
谢谢。
我现在在伪分布式模式下使用 hadoop。我尝试了一些mapreduce,将其打包为jar,并将文件复制到hadoop。然后使用
./bin/hadoop 罐子*
开始它。
我的问题是:还有其他方法吗?如果我们有数千个工作要运行。我们不能只输入命令。我们在生产环境中做什么?
谢谢。
如果您有 1000 个作业,请编写一个 shell 脚本并在作业之间没有依赖关系的情况下提交它们。如果存在依赖项,请尝试使用 Chris 提到的 Apache Oozie。
可以自动启动 MapReduce 作业。比如一个java程序,可以启动一个job。诀窍是确保您将作业导出到 jar 文件中,并从您的 java 代码中调用该导出的 jar 文件(这是单独的)。我最近有一个类似的问题并发布了它,也许它也与你有关。
如果您需要安排作业运行,或者想要设计具有相互依赖关系的作业工作流,请查看 Apache OOZIE。