打开右侧代码文件窗口,在 Begin 至 End 区域补充代码,完成任务。 读取文件 /data/bigfiles/example.txt 中的内容,使用 Spark-Shell 将所有以大写字母 L 开头的行内容保存到 /root/result 目录下。
时间: 2024-12-22 22:21:49 浏览: 5
C#操作本地文件及保存文件到数据库的基本方法总结
为了在Spark Shell中完成这个任务,首先需要导入必要的Spark库并设置好路径。以下是相应的代码补全:
```scala
// 导入Spark相关的库
import org.apache.spark.sql.SparkSession
// 创建SparkSession
val spark = SparkSession.builder.appName("readAndSaveLines").getOrCreate()
// 设置当前工作目录
spark.sparkContext.setConf("spark.hadoop.fs.home", "/data")
// 读取文件
val lines = spark.read.text("/data/bigfiles/example.txt")
// 定义过滤函数,检查行是否以大写字母'L'开头
def startsWithL(line: String): Boolean = line.startsWith("L")
// 使用filter()操作符筛选出符合条件的行
val filteredLines = lines.filter(startsWithL)
// 定义保存结果的路径
val resultPath = "/root/result"
// 将过滤后的行写入文件
filteredLines.saveAsTextFile(resultPath)
// 关闭SparkSession
spark.stop()
```
阅读全文