BigQuery — это полностью управляемая, бесоперационная и недорогая аналитическая база данных от Google. С BigQuery вы можете выполнять запросы к терабайтам данных без необходимости в администраторе базы данных или какой-либо инфраструктуре для управления. BigQuery использует привычный SQL и модель оплаты по фактическому использованию. BigQuery позволяет вам сосредоточиться на анализе данных и получать ценную информацию.
В этой лабораторной работе мы рассмотрим, как выполнять запросы к публичному набору данных GitHub , одному из многих общедоступных наборов данных, доступных в BigQuery .
Чему вы научитесь
- Использование BigQuery
- Написание запроса для получения информации о большом наборе данных
Что вам понадобится
Включить BigQuery
Если у вас еще нет учетной записи Google (Gmail или Google Apps), вам необходимо ее создать .
- Войдите в консоль Google Cloud Platform ( console.cloud.google.com ) и перейдите в BigQuery. Вы также можете открыть веб-интерфейс BigQuery напрямую, введя следующий URL-адрес в браузере.
https://console.cloud.google.com/bigquery
- Примите условия обслуживания.
- Прежде чем использовать BigQuery, необходимо создать проект. Следуйте инструкциям, чтобы создать новый проект.
Выберите название проекта и запишите его идентификатор.
Идентификатор проекта — это уникальное имя для всех проектов Google Cloud. Далее в этой практической работе он будет обозначаться какPROJECT_ID
.
В этой лабораторной работе используются ресурсы BigQuery в рамках ограничений песочницы BigQuery . Платёжный аккаунт не требуется. Если вы позже захотите снять ограничения песочницы, вы можете добавить платёжный аккаунт, подписавшись на бесплатную пробную версию Google Cloud Platform.
Откройте набор данных GitHub в веб-интерфейсе BigQuery.
https://console.cloud.google.com/bigquery?p=bigquery-public-data&d=github_repos&t=commits&page=table
Получите быстрый предварительный просмотр того, как выглядят данные.
Откройте редактор запросов,
введите этот запрос, чтобы найти наиболее распространенные сообщения о коммитах в общедоступном наборе данных GitHub ,
SELECT subject AS subject,
COUNT(*) AS num_duplicates
FROM `bigquery-public-data.github_repos.sample_commits`
GROUP BY subject
ORDER BY num_duplicates DESC
LIMIT 100
Поскольку набор данных GitHub большой, для экономии средств во время экспериментов рекомендуется использовать меньший набор данных. Используйте количество обработанных байтов под редактором, чтобы оценить стоимость запроса.
Нажмите кнопку Выполнить запрос .
Через несколько секунд результат будет указан внизу, а также будет указано, какой объем данных был обработан и сколько времени это заняло:
Несмотря на то, что размер таблицы sample_commits
составляет 2,49 ГБ, запрос обработал только 35,8 МБ. BigQuery обрабатывает только те байты из столбцов, которые используются в запросе, поэтому общий объём обработанных данных может быть значительно меньше размера таблицы. Кластеризация и секционирование позволяют ещё больше сократить объём обрабатываемых данных.
Теперь попробуйте выполнить запрос к другому набору данных, например, к одному из других общедоступных наборов данных .
Например, этот запрос находит популярные устаревшие или неподдерживаемые проекты в общедоступном наборе данных Libraries.io, которые все еще используются в качестве зависимости в других проектах.
SELECT
name,
dependent_projects_count,
language,
status
FROM
`bigquery-public-data.libraries_io.projects_with_repository_fields`
WHERE status IN ('Deprecated', 'Unmaintained')
ORDER BY dependent_projects_count DESC
LIMIT 100
Другие организации также опубликовали свои данные в открытом доступе на BigQuery. Например, набор данных GitHub Archive можно использовать для анализа публичных событий на GitHub, таких как запросы на извлечение, звёздочки репозитория и открытые проблемы. Набор данных PyPI от Python Software Foundation можно использовать для анализа запросов на загрузку пакетов Python.
Вы использовали BigQuery и SQL для выполнения запросов к публичному набору данных GitHub. Теперь вы можете выполнять запросы к наборам данных объёмом в петабайты!
Что мы рассмотрели
- Использование синтаксиса SQL для запроса записей коммитов GitHub
- Написание запроса для получения информации о большом наборе данных
Узнать больше
- Изучите SQL с помощью вводного курса Kaggle в SQL .
- Изучите документацию BigQuery .
- Узнайте, как другие используют набор данных GitHub , в этой записи блога .
- Исследуйте данные о погоде, данные о преступности и многое другое в TIL с помощью BigQuery .
- Узнайте, как загружать данные в BigQuery с помощью инструмента командной строки BigQuery .
- Посетите раздел BigQuery в Reddit, чтобы узнать, как другие используют BigQuery сегодня.