hadoop - Spark RDD 操作

标签 hadoop apache-spark apache-spark-sql spark-dataframe rdd

假设我在 CSV 文件中有一个包含两列 A 和 B 的表格。我从 A 列 [Max value = 100] 中选择最大值,我需要使用 JavaRDD 操作返回 B 列的相应值 [Return Value = AliExpress],而不使用 DataFrames。

输入表:

COLUMN A     Column B   
   56        Walmart
   72        Flipkart
   96        Amazon
   100       AliExpress

输出表:

COLUMN A     Column B   
  100        AliExpress

这是我到现在为止尝试过的

源代码:

SparkConf conf = new SparkConf().setAppName("SparkCSVReader").setMaster("local");
JavaSparkContext sc = new JavaSparkContext(conf); 
JavaRDD<String> diskfile = sc.textFile("/Users/apple/Downloads/Crash_Data_1.csv");
JavaRDD<String> date = diskfile.flatMap(f -> Arrays.asList(f.split(",")[1]));

从上面的代码我只能获取一列数据。反正有两列。有什么建议么。提前致谢。

最佳答案

您可以使用 toptakeOrdered 函数来实现它。

rdd.top(1)  //gives you top element in your RDD

关于hadoop - Spark RDD 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41141574/

相关文章:

hadoop - 执行错误,从 org.apache.hadoop.hive.ql.exec.mr.MapRedTask 返回代码 1 (state=08S01,code=1)

scala - 如何将 Option 与 Spark UDF 结合使用

scala - 必须包含 log4J,但它会导致 Apache Spark shell 出错。如何避免错误?

python - 舍入 double 值并转换为整数

hadoop守护进程没有启动

hadoop - 我可以在电子商务(Magento)中使用大数据吗?

java - Gobblin:java.lang.ClassNotFoundException:org.apache.gobblin.source.extractor.extract.jdbc.MysqlSource

arrays - 在非空 WrappedArray 上过滤数据框

pyspark - 将列表列转换为数据框

python - 数据框上的多条件过滤器