【发布时间】:2019-06-14 10:49:22
【问题描述】:
我的 Spark 项目在 Eclipse 上,我正在使用 Maven 和 Scala IDE。 这是我的代码
package bd.spark_app
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.sql.SQLContext
import org.apache.spark.sql._
import org.apache.spark.sql.types.IntegerType
import scala.io.Source
import org.apache.spark.sql.functions._
import scala.collection.mutable.WrappedArray
import org.apache.log4j._
import org.apache.spark.sql.types.{StructType, StructField, StringType}
import org.apache.spark.sql.Row
import scala.Array
object alla {
def main(args:Array[String]) = {
val conf =newSparkConf().setMaster("local").setAppName("trying ")
val sc = new SparkContext(conf)
val x = sc.textFile("/home/hadoopusr/sampledata")
x.map(_.split(" "))
.map(str => (
(str.head.head match {
case 'M' => "Magazine"
case 'B' => "Book"
case 'D' => "Dictionary"
case _ => ???
},
str.head.drop(1).dropRight(3).toInt
), str.last.toInt)
)
.reduceByKey(_ + _)
.map(tuple => (tuple._1._1, tuple._1._2, tuple._2))
结果是
(Magazine,2003,3),
(Dictionary,2001,24),
(Dictionary,2003,3),
(Book,2002,1),
(Magazine,2001,7),
(Book,2004,10),
(Dictionary,2002,22),
(Dictionary,2004,10)
我希望结果在表格中
TYPE YEAR COPIES
Magazine 2003 3
Dictionary 2001 24
Dictionary 2003 3
Book 2002 1
等等……
但我需要表格在一个简单的界面中。 我是 scala 的新手,在“如何使用 scala 制作接口”方面没有找到任何相关信息
【问题讨论】:
-
几件事。永远不要发布未格式化的代码——这次我已经为你格式化了,但它几乎无法阅读。也不清楚你在问什么。您想要“在表格中”的结果是什么意思?你是什么意思,你需要它“在一个简单的界面”??
标签: eclipse scala apache-spark interface