如何从另一个java程序以编程方式执行mapreducejar?

hk8txs48  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(345)

我有一个mapreduce程序(dataprofiler.jar),它通过将表名和列名作为命令行参数来执行一些数据分析。

hadoop -jar DataProfiler.jar -D tableName=MyTable -D columnFamilyName=CF1

有没有一种方法可以把它 Package 到另一个java程序中。这样我就可以为所有表执行这个jar(通过连接到数据库并获得所有表和列的列表)。
谢谢!

kmbjn2e3

kmbjn2e31#

我建议,不要打电话给 MapReduce 来自jar的简单java程序,可以写一个逻辑 MapReduce 驱动程序类。
我们叫这个班吧 JobRunner . 你可以定义 member variables 它将保存有关 table 以及 columns 你需要处理。然后您可以设置 MapReduce 配置并启动作业。从技术上讲,你正在实现同样的目标,但方式略有不同。我认为这是一个更好的方法,然后调用一个jar并启动 MapReduce 工作。

相关问题