IDEA写spark程序时import org.apache.spark.sql.{Row,SparkSession}错误

本文详细介绍了在IDEA中首次运行Spark程序时如何正确导入必要的jar包。通过下载并添加到项目依赖,确保Spark程序能够顺利运行。

因为是IDEA第一次运行spark程序,所以需要导入相应的jar包

jar包来源参考我的另一篇博文

其实两篇博文描述的遇到的问题挺相似的

下载好后点击文件→项目结构→模块→依赖(lib)

 

也可以直接shift+Ctrl+Alt打开此界面

点击右边的➕,选择 Jars或目录,选择下载好的Jar包,单击确定。

大功告成~

任务:把外部的txt文件经过ETL后转换为DataFrame(spark的表格) package org.example import org.apache.spark.sql.{Row, SparkSession} import org.apache.spark.sql.types._ import org.apache.spark.{SparkConf, SparkContext} object Exam09 { def main(args: Array[String]): Unit = { //用RDD先把数据读进,再进行拆分和转换 val conf = new SparkConf() conf.setMaster("local").setAppName("test") val sc = new SparkContext(conf) //主要管SparkSQL val spark = SparkSession.builder().master("local").getOrCreate() //上面这部分如要spark-shell中,系统已作过,不需要再作,但import部分要导入一下 import spark.implicits._ //先用RDD把数据读进来进行分解,我们三种方式来转换,各有各的用法 val student = sc.textFile("file:///opt/software/student.txt").map(x=>x.split(",")) .map(x=>(x(0),x(1),x(2).trim.toInt,x(3).trim.toInt,x(4).trim.toInt)) //有三种方式来进行转换:1.直接转换,缺点是不灵活,死了,适用于数据不变场合 val stu1 = student.toDF("id","name","math","english","chem") //使用自定义字段:可以在运行过程从指定文件中读结构,可以动态生成没的表格 val fields =Array( StructField("id",StringType), StructField("name",StringType), StructField("math",IntegerType), StructField("english",IntegerType), StructField("chem",IntegerType)) //生成表结构 val schema = StructType(fields) //结构 val rddRows= student.map(x=>Row(x._1,x._2,x._3,x._4,x._5)) //数据 //把结构和数据合并,相当于往表格中插入数据 val stu2 = spark.createDataFrame(rddRows,schema) } } 怎么做的 在哪里做 利用idea和securecrt详细步骤
最新发布
11-25
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值