Набор данных о воздушном движении OpenSky Network 2020
"Данные в этом наборе получены и отфильтрованы из полного набора данных OpenSky, чтобы проиллюстрировать развитие воздушного движения во время пандемии COVID-19. Набор включает в себя все рейсы, которые видели более 2500 участников сети с 1 января 2019 года. Дополнительные данные будут периодически включаться в набор данных до окончания пандемии COVID-19".
Источник: https://zenodo.org/record/5092942#.YRBCyTpRXYd
Martin Strohmeier, Xavier Olive, Jannis Lübbe, Matthias Schäfer, and Vincent Lenders "Crowdsourced air traffic data from the OpenSky Network 2019–2020" Earth System Science Data 13(2), 2021 https://doi.org/10.5194/essd-13-357-2021
Загрузите набор данных
Выполните команду:
Загрузка займет около 2 минут при хорошем подключении к интернету. Будет загружено 30 файлов общим размером 4,3 ГБ.
Создайте таблицу
Импортируйте данные в ClickHouse
Загрузите данные в ClickHouse параллельными потоками:
- Список файлов передаётся (
ls -1 flightlist_*.csv.gz
) вxargs
для параллельной обработки. xargs -P100
указывает на возможность использования до 100 параллельных обработчиков, но поскольку у нас всего 30 файлов, то количество обработчиков будет всего 30.- Для каждого файла
xargs
будет запускать скрипт сbash -c
. Сценарий имеет подстановку в виде{}
, а командаxargs
заменяет имя файла на указанные в подстановке символы (мы указали это дляxargs
с помощью-I{}
). - Скрипт распакует файл (
gzip -c -d "{}"
) в стандартный вывод (параметр-c
) и перенаправит его вclickhouse-client
. - Чтобы распознать формат ISO-8601 со смещениями часовых поясов в полях типа DateTime, указывается параметр парсера --date_time_input_format best_effort.
В итоге: клиент clickhouse добавит данные в таблицу opensky
. Входные данные импортируются в формате CSVWithNames.
Загрузка параллельными потоками займёт около 24 секунд.
Также вы можете использовать вариант последовательной загрузки:
Проверьте импортированные данные
Запрос:
Результат:
Убедитесь, что размер набора данных в ClickHouse составляет всего 2,66 GiB.
Запрос:
Результат:
Примеры
Общее пройденное расстояние составляет 68 миллиардов километров.
Запрос:
Результат:
Средняя дальность полета составляет около 1000 км.
Запрос:
Результат:
Наиболее загруженные аэропорты в указанных координатах и среднее пройденное расстояние
Запрос:
Результат:
Номера рейсов из трех крупных аэропортов Москвы, еженедельно
Запрос:
Результат:
Online Playground
Вы можете протестировать другие запросы к этому набору данным с помощью интерактивного ресурса Online Playground. Например, вот так. Однако обратите внимание, что здесь нельзя создавать временные таблицы.