|
|
|
@ -3,21 +3,23 @@
|
|
|
|
|
### 2.2.1 数据源
|
|
|
|
|
|
|
|
|
|
本教程提供一份全球战斗机相关指标参数的`json`数据(见第二章节`data`目录)。
|
|
|
|
|
|
|
|
|
|
其中一条数据如下:
|
|
|
|
|
|
|
|
|
|
`{"发动机数量":"双发","武器装备":"(1)机炮:30 mm机炮 150发; (2)导弹:鹰击-62反舰巡航导弹,鹰击-83反舰导弹,鹰击-91反舰导弹,鹰击-9多用途导弹,雷电-10反辐射导弹,霹雳-8空空导弹,霹雳-11空空导弹,霹雳-12中程空空导弹; (3)炸弹:雷霆2-雷射导引弹,雷石6-滑翔炸弹,200A反机场炸弹,通用炸弹500千克,1500千克。","发动机":"AL-31F涡扇发动机","机长":"21.19米","名称":"歼-16战机","乘员":"2人","关注度":"(5分)","研发单位":"中国沈阳飞机公司","气动布局":"后掠翼","机高":"5.9米","最大飞行速度":"1,438千米每小时","翼展":"14.7米","最大航程":"4,288千米","飞行速度":"超音速","首飞时间":"2011年10月17日"}`
|
|
|
|
|
|
|
|
|
|
每条`json`数据里可能有不同数量的成员,成员的值可能为空。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### 2.1.2 统计指标说明
|
|
|
|
|
### 2.2.2 统计指标说明
|
|
|
|
|
|
|
|
|
|
统计出全球飞行速度排名前三的战斗机。
|
|
|
|
|
|
|
|
|
|
### 2.1.3 结果数据保存
|
|
|
|
|
### 2.2.3 结果数据保存
|
|
|
|
|
|
|
|
|
|
统计出指标后将结果以`json`格式保存到本地目录。
|
|
|
|
|
|
|
|
|
|
### 2.1.4处理步骤
|
|
|
|
|
### 2.2.4处理步骤
|
|
|
|
|
|
|
|
|
|
1.创建`SparkSession`;
|
|
|
|
|
```
|
|
|
|
@ -31,20 +33,36 @@ spark = SparkSession \
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
2.读取所给`json`数据创建`DataFrame`;
|
|
|
|
|
|
|
|
|
|
`df =spark.read.json("/jun.json")`
|
|
|
|
|
|
|
|
|
|
3.创建视图;
|
|
|
|
|
|
|
|
|
|
`df.createOrReplaceTempView("table1")`
|
|
|
|
|
|
|
|
|
|
4.编写`sql`语句计算指标;
|
|
|
|
|
|
|
|
|
|
`sqlDF = spark.sql("sql语句")`
|
|
|
|
|
|
|
|
|
|
5.将处理结果保存到本地目录;
|
|
|
|
|
|
|
|
|
|
`sqlDF.write.format("json").save("保存路径")`
|
|
|
|
|
|
|
|
|
|
6.停止`SparkSession`。
|
|
|
|
|
|
|
|
|
|
`spark.stop()`
|
|
|
|
|
|
|
|
|
|
### 2.2.5 效果展示:
|
|
|
|
|
|
|
|
|
|
在保存路径我们打开处理后的文件,可以看到我们统计出的飞行速度前三的战斗机;
|
|
|
|
|
|
|
|
|
|
<p align="center" >
|
|
|
|
|
<img style="border: 2px solid #ddd;padding: 5px; background: #fff;" src="https://www.educoder.net/api/attachments/457571" alt="" height="100%" width="100%" />
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|