Consulta datos de GitHub con BigQuery

BigQuery es la base de datos de estadísticas de Google de bajo costo, no-ops y completamente administrada. Con BigQuery, puede consultar muchos terabytes de datos sin la necesidad de un administrador de base de datos ni infraestructura. BigQuery usa el lenguaje SQL que conoce y un modelo de pago que solo paga por el uso. Además, le permite enfocarse en el análisis de datos para buscar estadísticas valiosas.

En este lab, veremos cómo consultar el conjunto de datos públicos de GitHub, uno de muchos conjuntos de datos públicos disponibles en BigQuery.

Qué aprenderás

  • Utilizar BigQuery
  • Escribir una consulta para obtener estadísticas sobre un conjunto de datos grande

Requisitos

  • Un proyecto de Google Cloud Platform
  • Un navegador, como Chrome o Firefox

Habilitar BigQuery

Si aún no tienes una Cuenta de Google (Gmail o Google Apps), debes crear una.

  • Acceda a Google Cloud Platform Console (console.cloud.google.com) y navegue a BigQuery. También puede abrir la IU web de BigQuery directamente si ingresa la siguiente URL en su navegador.
https://console.cloud.google.com/bigquery
  • Acepta las Condiciones del Servicio.
  • Para poder usar BigQuery, debes crear un proyecto. Sigue las indicaciones para crear un proyecto nuevo.

    Elige un nombre de proyecto y toma nota del ID.


    El ID del proyecto es un nombre único en todos los proyectos de Google Cloud. Se mencionará más adelante en este codelab como PROJECT_ID.

En este codelab, se usan los recursos de BigQuery con los límites de la zona de pruebas de BigQuery. No se requiere una cuenta de facturación. Si más adelante quieres quitar los límites de la zona de pruebas, puedes registrarte para obtener la prueba gratuita de Google Cloud Platform y agregar una cuenta de facturación.

Abre el conjunto de datos de GitHub en la IU web de BigQuery.

https://console.cloud.google.com/bigquery?p=bigquery-public-data&d=github_repos&t=commits&page=table.

Obtén una vista previa rápida de cómo se ven los datos.

Abra el Editor de consultas,

ingrese esta consulta para encontrar los mensajes de confirmación más comunes en el conjunto de datos públicos de 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

Dado que el conjunto de datos de GitHub es grande, es útil usar un conjunto de datos de muestra más pequeño mientras realizas experimentos para ahorrar costos. Usa los bytes procesados debajo del editor para estimar el costo de la consulta.

Haz clic en el botón Ejecutar consulta.

En pocos segundos, el resultado aparecerá en la parte inferior, y también se indicará cuántos datos se procesaron y cuánto tiempo llevó.

Aunque la tabla sample_commits es de 2.49 GB, la consulta solo procesó 35.8 MB. BigQuery solo procesa los bytes de las columnas que se usan en la consulta, por lo que la cantidad total de datos procesados puede ser considerablemente menor que el tamaño de la tabla. Con el agrupamiento en clústeres y la partición, se puede reducir aún más la cantidad de datos procesados.

Ahora intente consultar otro conjunto de datos, como uno de los otros conjuntos de datos públicos.

Por ejemplo, esta consulta encuentra proyectos populares obsoletos o sin mantenimiento en el conjunto de datos públicos Libraries.io que aún se usan como dependencia en otros proyectos.

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

Otras organizaciones pusieron sus datos a disposición del público en BigQuery. Por ejemplo, el conjunto de datos del archivo de GitHub se puede usar para analizar eventos públicos en GitHub, como solicitudes de extracción, estrellas del repositorio y problemas abiertos. Puedes usar el conjunto de datos de PyPI de la Fundación de software de Python para analizar las solicitudes de descarga de los paquetes de Python.

Usaste BigQuery y SQL para consultar el conjunto de datos públicos de GitHub. Tiene la posibilidad de consultar conjuntos de datos a escala de petabytes.

Temas abordados

  • Usa la sintaxis de SQL para consultar los registros de confirmación de GitHub
  • Escribir una consulta para obtener estadísticas sobre un conjunto de datos grande

Más información