实验5 Spark SQL 编程初级实践

源文件内容如下(包含 id,name,age),将数据复制保存到 ubuntu 系统/usr/local/spark 下, 命名为 employee.txt,实现从 RDD 转换得到 DataFrame,并按 id:1,name:Ella,age:36 的格式 打印出 DataFrame 的所有数据。请写出程序代码。(任选一种方法即可)

1,Ella,36
2,Bob,29
3,Jack,29

代码如下:

import org.apache.spark.sql.types._
import org.apache.spark.sql.Encoder
import org.apache.spark.sql.Row
import org.apache.spark.sql.SparkSession
object RDDtoDF {
def main(args: Array[String]) {
   val spark = SparkSession.builder().appName("RddToDFrame").master("local").getOrCreate()
   import spark.implicits._  
  val  employeeRDD  =spark.sparkContext.textFile("file:///usr/local/spark/employee.txt")
  val schemaString = "id name age"
  val fields = schemaString.split(" ").map(fieldName => StructField(fieldName,
  StringType, nullable = true))
  val schema = StructType(fields)
  val  rowRDD  =  employeeRDD.map(_.split(",")).map(attributes  =>
  Row(attributes(0).trim, attributes(1), attributes(2).trim))
  val employeeDF = spark.createDataFrame(rowRDD, schema)
  employeeDF.createOrReplaceTempView("employee")
  val results = spark.sql("SELECT id,name,age FROM employee")
  results.map(t => "id:"+t(0)+","+"name:"+t(1)+","+"age:"+t(2)).show()
  }
}

运行截图:

 

转载于:https://www.cnblogs.com/z12568/p/10604400.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 实验5是关于Spark SQL编程初级实践实验。在这个实验中,学习者将学习如何使用Spark SQL进行数据分析和处理。具体来说,学习者将学习如何使用Spark SQL进行数据的读取、转换、过滤和聚合等操作,以及如何使用Spark SQL进行数据可视化和报表生成等操作。此外,学习者还将学习如何使用Spark SQL进行数据的存储和管理,以及如何使用Spark SQL进行数据的优化和性能调优等操作。通过这个实验,学习者将掌握Spark SQL编程的基本技能,为进一步深入学习和应用Spark SQL打下坚实的基础。 ### 回答2: 实验5是一项关于Spark SQL编程初级实践,主要涉及到Spark SQL数据处理、聚合和分析操作。在这个实践中,我们使用了一些简单的Spark SQL语句,通过对一个示例数据集的分析和处理,来深入了解Spark SQL的基本操作和使用方法。 首先,我们通过读取示例数据集中的CSV文件,将数据加载到Spark SQL中,并将其注册为一个表。在这个步骤中,我们学习了如何使用Spark SQL中的数据读取器和数据格式化器,以及如何将数据转换为表格结构。接着,我们使用了一些简单的查询语句,来了解如何对数据进行筛选、排序和过滤操作。这些查询语句包括SELECT、WHERE、ORDER BY、LIMIT等命令,可以轻松地对数据进行简单的分析和处理。 接下来,我们使用了一些聚合和分析操作,对数据进行了更加深入的处理。在这个步骤中,我们学习了如何使用GROUP BY命令,对数据进行分组聚合,以及如何使用SUM、COUNT、AVG等函数,对数据进行计算和统计操作。通过这些操作,我们可以更加直观地了解数据的特征和规律,并得出一些有用的结论和建议。 最后,我们使用了一些高级的Spark SQL语句,对数据进行了更加复杂的处理和分析操作。例如,我们使用了JOIN命令,将多个数据表进行关联,并使用HAVING命令,对关联后的数据进行筛选和分析。这些高级操作可以更加深入地挖掘数据中的潜在价值和意义,为后续的数据分析和挖掘工作奠定了基础。 总的来说,实验5是一项非常有意义的初级实践,通过对Spark SQL的基本操作和使用方法的学习和实践,帮助我们更好地理解和掌握了这一强大的数据处理工具。在今后的数据分析和挖掘工作中,这些知识和技能将会派上大用场,成为我们掌握和应用大数据技术的重要基础。 ### 回答3: Spark SQLSpark 中一个用于结构化数据处理的用例,提供了一种对结构化数据进行操作的 API。同时,Spark SQL 还支持许多 SQL 查询和类似数据操作的API,例如 DataFrame,DataSet 和 SQL 语言。 在本次实验中,我们学习了如何使用 Spark SQL数据进行操作。首先,我们需要将数据导入到 Spark 中。我们可以使用 Spark 中的 read 方法,从 CSV 文件、JSON 文件或 HDFS 文件系统中读取数据。将数据读入Spark DataFrame 后,我们可以使用 Spark SQL API 对数据进行过滤、聚合、分组等操作。 在这次实验中,我们通过读取 CSV 文件并创建 DataFrame,在 Spark SQL 中使用 SQL 语言对数据进行过滤和聚合操作。我们使用了 SELECT、WHERE、GROUP BY 和 ORDER BY 这些 SQL 命令来对数据进行查询和操作。在实验中,我们了解了如何使用 SQL 语句来进行数据操作,并且学习了如何使用 DataFrame 的 API 来完成相同的任务。 除了 SQL 语句和 DataFrame API,Spark SQL 还支持使用 Spark 自带的 Scala、Java 或 Python 语言来进行编程。我们还了解了在 Spark 中如何使用 Scala 语言进行编程,并通过框架提供的 API 执行了简单的任务。 在本次实验中,我们学习了操作结构化数据的重要性,并了解了使用 Spark SQL数据进行操作的基础知识。这个实验还为我们打下了在使用 Spark SQL 进行更深入学习的良好基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值