Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从Spark中的文本文件创建PairedRDD_Java_Apache Spark_Rdd - Fatal编程技术网

Java 从Spark中的文本文件创建PairedRDD

Java 从Spark中的文本文件创建PairedRDD,java,apache-spark,rdd,Java,Apache Spark,Rdd,我对使用Java编码的ApacheSpark有疑问。我有 一个纯文本的示例文件,由由制表符分隔的成对文件组成。大概是这样的: ** example.txt 1 5 2 7 5 4 ** 我在网上读了一些书,他们建议用这段代码创建一个pairedd,使用行的第一列作为键,第二列作为值。所以他们使用Tuple2(来自scala) 但是我不明白为什么我看到的所有例子都是创建元组,用整行的值初始化对象。因为键只是x.split()[0]函数的[0]。而这个值似乎就是整条线 这是正确的吗?或

我对使用Java编码的ApacheSpark有疑问。我有 一个纯文本的示例文件,由由制表符分隔的成对文件组成。大概是这样的:

** example.txt
1   5
2   7
5   4
**
我在网上读了一些书,他们建议用这段代码创建一个pairedd,使用行的第一列作为键,第二列作为值。所以他们使用Tuple2(来自scala)

但是我不明白为什么我看到的所有例子都是创建元组,用整行的值初始化对象。因为键只是x.split()[0]函数的[0]。而这个值似乎就是整条线

这是正确的吗?或者我应该用x.split()[1](用于值)替换它吗

下面的代码是我在web上的许多示例源代码中找到的

PairFunction<String, String, String> keyData =   new PairFunction<String, String, String>() {

    public Tuple2<String, String> call(String x) {

    return new Tuple2(x.split(” “)[0], x);

}
PairFunction keyData=new PairFunction(){
公共元组2调用(字符串x){
返回新的Tuple2(x.split(“”[0],x));
}

这只是一个示例。您可以返回x[1]或x。我不知道确切的上下文,但据我记忆所及,我过去在这里见过这种类型的示例

所以,你的选择,没有对错。对我来说,我假设x[1],但同样地,x[0]可以被视为一条线的键


这里的教训是:你可以同时做这两件事。从那以后,你可以减少(按键)例如,强/ >或强> > GROPYBYKEY <强> >。这是PAIRDERDD可以做的。< HermanZ >请阅读<代码> StaveJava>代码>标签,并考虑将其从帖子中删除。<代码> SpBasejava < /java >不是关于Spice的java API,而是关于与您的问题无关的框架。