来自 The OpenSky Network 2020 的众包空中交通数据
该数据集中的数据是从完整的 OpenSky 数据集中派生和清理的,以说明 COVID-19 大流行期间空中交通的发展。它涵盖了自 2019 年 1 月 1 日以来该网络中 2500 多名成员观测到的所有航班。直到 COVID-19 大流行结束,更多数据将定期的更新到数据集中。
来源:https://zenodo.org/record/5092942#.YRBCyTpRXYd
Martin Strohmeier、Xavier Olive、Jannis Lübbe、Matthias Schäfer 和 Vincent Lenders “来自 OpenSky 网络 2019-2020 的众包空中交通数据”地球系统科学数据 13(2),2021 https://doi.org/10.5194/essd- 13-357-2021
下载数据集
运行命令:
Download will take about 2 minutes with good internet connection. There are 30 files with total size of 4.3 GB.
创建表
导入数据
将数据并行导入到 ClickHouse:
- 这里我们将文件列表(
ls -1 flightlist_*.csv.gz
)传递给xargs
以进行并行处理。xargs -P100
指定最多使用 100 个并行工作程序,但由于我们只有 30 个文件,工作程序的数量将只有 30 个。 - 对于每个文件,
xargs
将通过bash -c
为每个文件运行一个脚本文件。该脚本通过使用{}
表示文件名占位符,然后xargs
由命令进行填充(使用-I{}
)。 - 该脚本会将文件 (
gzip -c -d "{}"
) 解压缩到标准输出(-c
参数),并将输出重定向到clickhouse-client
。 - 我们还要求使用扩展解析器解析 DateTime 字段 (--date_time_input_format best_effort) 以识别具有时区偏移的 ISO-8601 格式。
最后,clickhouse-client
会以 CSVWithNames 格式读取输入数据然后执行插入。
并行导入需要 24 秒。
如果您不想使用并行导入,以下是顺序导入的方式:
验证数据
请求:
结果:
ClickHouse 中的数据集大小只有 2.66 GiB,检查一下。
请求:
结果:
运行一些查询
总行驶距离为 680 亿公里。
请求:
结果:
平均飞行距离约为 1000 公里。
请求:
结果:
最繁忙的始发机场和观测到的平均距离
请求:
结果:
每周来自莫斯科三个主要机场的航班数量
请求:
结果:
在线 Playground
你可以使用交互式资源 Online Playground 来尝试对此数据集的其他查询。 例如, 执行这个查询. 但是,请注意无法在 Playground 中创建临时表。