Query 一下?
DataFrame 接口的一个优势是,您可以在 Spark 集群中的表上运行 SQL 查询。即使您没有 SQL 经验也不用担心,我们会提供查询语句!(想系统学习 SQL,请从我们的课程 Introduction to SQL 开始。)
正如您在上一个练习中看到的,集群中的一张表是 flights。该表包含 2014 年和 2015 年从波特兰国际机场(PDX)或西雅图-塔科马国际机场(SEA)起飞的每个航班的记录,每行对应一个航班。
在此表上运行查询非常简单,只需在 SparkSession 上使用 .sql() 方法即可。该方法接收包含查询的字符串,并返回一个包含结果的 DataFrame!
仔细看您会发现,表 flights 只在查询中被提及,并未作为任何方法的参数。这是因为您的环境中并没有保存该数据的本地对象,因此将表作为参数传递并没有意义。
请记住,我们已经在您的工作区中创建了名为 spark 的 SparkSession。(不再叫 my_spark,因为这是我们为您创建的!)
本练习是课程的一部分
PySpark 基础
练习说明
- 使用
.sql()方法获取flights表的前 10 行,并将结果保存到flights10。变量query中已包含合适的 SQL 查询。 - 使用 DataFrame 的
.show()方法打印flights10。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Don't change this query
query = "FROM flights SELECT * LIMIT 10"
# Get the first 10 rows of flights
flights10 = ____
# Show the results
flights10.____