spark分析某国气象站平均气温实例

本文通过一个实例展示了如何利用Spark对某国气象站的平均气温数据进行分析。首先,详细介绍了数据集的结构和预处理过程,将气象站的小文件合并。接着,讲解了如何使用HDFS Java API将数据导入HDFS。然后,利用Spark计算每个气象站的平均气温,通过InputSplit获取文件名以得到气象站编号,并进行数据清洗。最后,提供了完整代码和打包提交Spark任务的方法。
摘要由CSDN通过智能技术生成
一、数据集分析

数据文件按照气象站和日期进行组织,每个气象站都是一个总目录,而且每个气象站下面从 1980 年到 2010 年,每一年又都作为一个子目录。 因为某国有成千上万个气象站,所以整个数据集由大量的小文件组成。通常情况下,处理少量的大型文件更容易、更有效,因此,这些数据需要经过预处理,将每个气象站的数据文件拼接成一个单独的文件。 预处理过的数据文件示例如下所示:

30yr_03103.dat
30yr_03812.dat
30yr_03813.dat
30yr_03816.dat
30yr_03820.dat
30yr_03822.dat
30yr_03856.dat
30yr_03860.dat
30yr_03870.dat
30yr_03872.dat

其中03103、03812、03813、03816、03820、03822、03856、03860、03870、03872代表的是气象站编号。

这些数据按行并以 ASCII 格式存储,其中每一行是一条记录。 下面我们展示一行采样数据,其中重要的字段被突出显示。该行数据被分割成很多行以突出每个字段,但在实际文件中,这些字段被整合成一行且没有任何分隔符。

数据              含义              所占位数
1998            #year               4
03              #month              3
09              #day                3
17              #hour               3
11              #temperature        6
-100            #dew                6
10237           #pressure           6           
60              #wind_direction     6
72              #wind_speed         6
0               #sky_condition      6
0               #rain_1h            6
-9999           #rain_6h            6

真实数据如下所示:

2010 09 08 21   200    83 10091   230    72 -9999     0 -9999

数据集下载:请

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值