如何在apache spark中解决以下问题

南迪尼

考虑一个零售场景,其中(K,V)输入数组包含(产品名称,价格),如下所示。每个 Key 的价值都需要减去500折扣优惠

使用Spark逻辑实现以上需求,

输入

{(Jeans,2000),(Smart phone,10000),(Watch,3000)}

预期产出enter code here

{(Jeans,1500),(Smart phone,9500),(Watch,2500)}

我已经尝试了下面的代码我遇到了错误请帮我修复它们 import java.util.Arrays; 导入 java.util.Iterator;

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.api.java.function.FlatMapFunction;
import org.apache.spark.api.java.function.Function;
import org.apache.spark.api.java.function.Function2;
import org.apache.spark.api.java.function.PairFunction;

import scala.Tuple2;

public class PairRDDAgg {

public static void main(String[] args) {
    // TODO Auto-generated method stub

    SparkConf conf = new 
SparkConf().setAppName("Line_Count").setMaster("local");
    JavaSparkContext sc = new JavaSparkContext(conf);

    JavaRDD<String> input = 
sc.textFile("C:/Users/xxxx/Documents/retail.txt");



    JavaPairRDD<String, Integer> counts = input.mapValues(new Function() {
        /**
         * 
         */
        private static final long serialVersionUID = 1L;

        public Integer call(Integer i) {
            return (i-500);
        }


    });

    System.out.println(counts.collect());

    sc.close();
}
}
学习者

你可以试试这个:

scala> val dataset = spark.createDataset(Seq(("Jeans",2000),("Smart phone",10000),("Watch",3000)))
dataset: org.apache.spark.sql.Dataset[(String, Int)] = [_1: string, _2: int]

scala> dataset.map ( x => (x._1, x._2 - 500) ).show

 +-----------+----+
 |         _1|  _2|
 +-----------+----+
 |      Jeans|1500|
 |Smart phone|9500| 
 |      Watch|2500|
 +-----------+----+

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Android Google映射java.lang.NoClassDefFoundError:无法解决以下问题:Lorg / apache / http / ProtocolVersion

如何解决NoClassDefFoundError:无法解决以下问题:Landroid / view / View $ OnUnhandledKeyEventListener;

我如何解决以下问题:#1241-操作数应包含1列

java.lang.NoClassDefFoundError:无法解决以下问题:Lorg / apache / commons / logging / LogFactory

NoClassDefFoundError:无法解决以下问题:Lorg / apache / http / conn / ssl / DefaultHostnameVerifier;

无法解决以下问题:Lorg / apache / http / client / methods / HttpPost

无法解决以下问题:Lbutterknife / ButterKnife $ Action; Android X?

将blazor应用程序托管到Windows Server时,如何解决以下问题?

无法解决以下问题:Lcom / facebook / internal / LoginAuthorizationType

如何显示以下问题陈述的区域明智数据?

蛮力技术解决以下问题

如何解决PL / SQL中设置的以下问题?

如何解决NoClassDefFoundError问题:无法解决以下问题:Android上的Lcom / google / android / gms / common / R $ string

如何用剃刀修复以下问题?

如何编写postgres查询以下问题?

致命异常java.lang.NoClassDefFoundError:无法解决以下问题:Lorg / apache / http / util / Args

如何解决以下问题,绘制keras模型?

解决以下问题的命令是什么

由于以下问题,无法使用 apache cxf 启动我的 REST 服务

如何使用二分搜索解决以下问题?

如何解决有关变量的以下问题?

如何从 Visual Studio 代码解决以下问题?

你能解释一下如何解决以下问题吗?

如何在 Python 中找到以下问题的最小值?

如何解决 JavaScript 中的以下问题?

numpy 数组的迭代以解决以下问题

如何使用函数来解决 Python 中的以下问题?(已编辑)

您如何根据 theta 找到以下问题的时间复杂度?

如何在python中解决以下问题?