如何访问dro文件到hadoop distibuted缓存?

时间:2015-04-03 13:13:03

标签: java hadoop drools

我在eclipse 3.8中做了一个drools程序

我有2个drools文件。

我想将我的Drools文件分享给所有映射器和缩减器。那么如何使用hadoop分布式缓存呢?在此之前,文件应存在于本地文件系统或HDFS中。

以下是如何在没有分布式缓存的情况下将Drools文件访问到程序中的程序。查看它并告诉我将drools存储到分布式缓存中的清晰度以及在程序中访问该文件的方法。

public class JUnitTests {

@Test
public void testMapReduceJob1() throws Exception {
    String drlDir = "/Users/mbp_user/devel/java/drools-hadoop/drl/";
    String hdfsOut = "output";
    FileSystem fs = FileSystem.get(new Configuration());
    fs.delete(new Path(hdfsOut), true);

    MapReduceByStateless.main(new String[] {
            "-files",
            drlDir + "rule1.drl",
            "input",
            "output"
            }
    );
}

@Test
public void testMapReduceJob2() throws Exception {
    String drlDir = "/Users/mbp_user/devel/java/drools-hadoop/drl/";
    String hdfsOut = "output";
    FileSystem fs = FileSystem.get(new Configuration());
    fs.delete(new Path(hdfsOut), true);

    MapReduceByStateful.main(new String[] {
            "-files",
            drlDir + "rule2.drl",
            "input",
            "output"
            }
    );
}
}

0 个答案:

没有答案