我正在 Spark 1.6 应用程序中编写单元测试,并且必须模拟 HDFS。正在使用 MiniDFSClusterhttps://wiki.apache.org/hadoop/HowToDevelopUnitTests https://wiki.apache.org/hadoop/HowToDevelopUnitTests如此处所述。我在当前的 Spark 1.6 代码中没有看到任何使用 MiniDFSCluster 的示例。
以下是显示如何设置和使用集群的片段。
val conf = new HdfsConfiguration()
val testDataCluster = new File("/var/path", "root")
conf.set(MiniDFSCluster.HDFS_MINIDFS_BASEDIR, testDataCluster.getAbsolutePath)
conf.setInt("dfs.blocksize", 512)
conf.setInt("dfs.namenode.fs-limits.min-block-size", 512)
val dfs = new MiniDFSCluster.Builder(conf).build()
dfs.waitActive()
val fileSystem: org.apache.hadoop.fs.FileSystem = dfs.getFileSystem
fileSystem.copyFromLocalFile(false, new Path(sourceDir),
new Path(hdfsDir))
您可能需要的一些依赖项是(以下采用 sbt 模块定义格式)
"org.apache.hadoop" % "hadoop-client" % "2.7.2" % "provided",
"org.apache.hadoop" % "hadoop-hdfs" % "2.7.2" % "test",
"org.apache.hadoop" % "hadoop-common" % "2.7.2" % "test",
"org.apache.hadoop" % "hadoop-hdfs" % "2.7.2" % "test" classifier "tests",
"org.apache.hadoop" % "hadoop-common" % "2.7.2" % "test" classifier "tests"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)