我正在尝试使用Java在SPARK中加载多个文件/目录,我已经找到了一些关于如何在scala中执行此操作的示例,有人可以举例说明如何在Java中执行此操作吗?
特别是我想使用类似路径的正则表达式,这样我就不必为每个文件指定一个完全限定的名称。我已经可以使用完全限定名称给逗号分隔文件值。
我从本地文件系统加载,我不知道这是否有所作为
以下是我用来加载文件的代码:
SparkConf sparkConf = new SparkConf().setAppName("TableAggregator");
JavaSparkContext ctx = new JavaSparkContext(sparkConf);
JavaRDD<String> lines = ctx.textFile(args[0], 1);
答案 0 :(得分:3)
在Spark中,方法textFile()
获取文件的URI(计算机上的本地路径或hdfs://
等URI)。
您可以对目录,压缩文件和通配符运行此方法:
ctx.textFile( “data.txt中”);
ctx.textFile( “/你的/目录/”);
ctx.textFile( “/你的/目录/ *”);
ctx.textFile( “/你的/目录/ * GZ。”);
请注意,当您为输入使用路径时,它必须是所有工作节点的相同路径。因此,您必须将文件复制到所有工作人员或使用共享的网络安装文件系统。
所以你可以使用带有通配符的模式来完成它。