Primeros pasos con BigQuery GIS

En este instructivo, se presenta una introducción a BigQuery GIS. BigQuery GIS te permite analizar y visualizar datos geoespaciales en BigQuery.

Objetivos

En este instructivo, realizarás lo siguiente:

  • Utilizar una función de BigQuery GIS para convertir columnas de latitud y longitud en puntos geográficos
  • Ejecutar una consulta que busque todas las estaciones de Citi Bike con más de 30 bicicletas disponibles para alquiler
  • Visualizar tus resultados en BigQuery Geo Viz

Costos

En este instructivo se usan componentes facturables de Google Cloud, que incluyen los siguientes:

  • BigQuery

Se te cobrará por lo siguiente:

  • Por consultar datos en los conjuntos de datos públicos de BigQuery
      .
    • El primer TB de cada mes es gratuito.
    • Si usas el precio de tasa fija, los costos de consultas se incluyen en el precio de tasa fija.

Antes de comenzar

  1. Accede a tu Cuenta de Google.

    Si todavía no tienes una cuenta, regístrate para obtener una nueva.

  2. En la página de selección de proyectos de Cloud Console, selecciona o crea un proyecto de Cloud.

    Ir a la página Selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud. Obtén información sobre cómo confirmar que tienes habilitada la facturación para tu proyecto.

  4. BigQuery se habilita automáticamente en proyectos nuevos. Para activar BigQuery en un proyecto existente, ve a Habilita la API BigQuery.

    Habilita la API

    .

Explora los datos de muestra

En este instructivo, se usa un conjunto de datos disponible a través del Programa de conjuntos de datos públicos de Google Cloud. Un conjunto de datos públicos es un conjunto de datos que se almacena en BigQuery y está disponible para el público en general. Se trata de conjuntos de datos que BigQuery aloja de modo que puedas acceder a ellos y también integrarlos en tus aplicaciones. Google cubre los costos de almacenamiento de estos conjuntos de datos y proporciona acceso público a los datos a través de un proyecto. Solo se paga por las consultas que realices en los datos (el primer 1 TB mensual es gratuito, sujeto a los detalles de los precios de las consultas).

Conjunto de datos de viajes con NYC Citi Bike

Viajes con NYC Citi Bike

Citi Bike es el programa de bicicletas compartidas más grande del país, con 10,000 bicicletas y 600 estaciones en Manhattan, Brooklyn, Queens y Jersey City. Este conjunto de datos incluye viajes de Citi Bike desde que este programa se lanzó en septiembre de 2013 y se actualiza diariamente. Citi Bike procesó los datos a fin de quitar los viajes tomados por el personal para inspeccionar y reparar el sistema, así como los viajes de menos de 60 segundos de duración, los que se consideran inicios falsos.

Para comenzar a explorar estos datos en la consola de BigQuery, visualiza los detalles de la tabla citibike_stations:

Ir al esquema citibike_stations

Tres columnas en esta tabla son relevantes para este instructivo:

  • bike_stations.longitude: la longitud de una estación. Los valores son longitudes WGS 84 válidas en formato de grados decimales.
  • bike_stations.latitude: la latitud de una estación. Los valores son latitudes WGS 84 válidas en formato de grados decimales.
  • num_bikes_available: la cantidad de bicicletas disponibles para alquiler.

Consulta las estaciones de bicicletas con más de 30 bicicletas disponibles

En esta sección del instructivo, ejecutas una consulta de SQL estándar que encuentra todas las estaciones de Citi Bike en Nueva York con más de 30 bicicletas disponibles para alquiler.

Detalles de la consulta

La siguiente consulta de SQL estándar se usa para encontrar las estaciones de Citi Bike con más de 30 bicicletas.

SELECT
  ST_GeogPoint(longitude, latitude)  AS WKT,
  num_bikes_available
FROM
  `bigquery-public-data.new_york.citibike_stations`
WHERE num_bikes_available > 30

Las cláusulas de la consulta hacen lo siguiente:

  • SELECT ST_GeogPoint(longitude, latitude) AS WKT, num_bikes_available
    La cláusula SELECT selecciona la columna num_bikes_available y usa la función ST_GeogPoint para convertir los valores en las columnas latitude y longitude a tipos (puntos) de GEOGRAPHY
    .
  • FROM `bigquery-public-data.new_york.citibike_stations`
    La cláusula FROM especifica la tabla que se está consultando: citibike_stations.
  • WHERE num_bikes_available > 30
    La cláusula WHERE filtra los valores en la columna num_bikes_available a solo aquellas estaciones con más de 30 bicicletas
    .

Ejecuta la consulta

Para ejecutar la consulta mediante Cloud Console, haz lo siguiente:

  1. Ve a la página de BigQuery en Cloud Console.

    Ir a la página BigQuery

  2. Ingresa la siguiente consulta de SQL estándar en el área de texto del Editor de consultas.

    -- Finds Citi Bike stations with > 30 bikes
    SELECT
      ST_GeogPoint(longitude, latitude)  AS WKT,
      num_bikes_available
    FROM
      `bigquery-public-data.new_york.citibike_stations`
    WHERE num_bikes_available > 30
    
  3. Haz clic en Ejecutar.

    La consulta tarda un momento en completarse. Una vez que se ejecuta la consulta, tus resultados aparecerán en el panel Resultados de la consulta.

    Resultados de la consulta sobre la estación de bicicletas

Visualiza los resultados de la consulta en Geo Viz

A continuación, visualizas los resultados con BigQuery Geo Viz: una herramienta web para visualizar datos geoespaciales en BigQuery con las API de Google Maps.

Inicia Geo Viz y autentícate

Antes de usar Geo Viz, debes autenticarte y otorgar acceso a los datos en BigQuery.

Para configurar Geo Viz, haz lo siguiente:

  1. Abre la herramienta web Geo Viz.

    Abrir la herramienta web Geo Viz

  2. En el primer paso, Seleccionar datos (Select data), haz clic en Autorizar (Authorize).

    Botón de autorización de Geo Viz

  3. En el diálogo Choose an account (Elegir una cuenta), haz clic en tu cuenta de Google.

    Cuadro de diálogo Elegir una cuenta

  4. En el diálogo de acceso, haz clic en Permitir (Allow) para que Geo Viz pueda tener acceso a tus datos de BigQuery.

    Cuadro de diálogo Permitir acceso

Ejecuta una consulta de SQL estándar en los datos de BigQuery GIS

Después de autenticarte y otorgar acceso, el próximo paso es ejecutar la consulta en Geo Viz.

Para ejecutar la consulta, haz lo siguiente:

  1. En el primer paso, Select data (Seleccionar datos), ingresa el ID de tu proyecto en el campo Project ID (ID del proyecto).

  2. En la ventana de la consulta, ingresa la siguiente consulta de SQL estándar.

    -- Finds Citi Bike stations with > 30 bikes
    SELECT
      ST_GeogPoint(longitude, latitude)  AS WKT,
      num_bikes_available
    FROM
      `bigquery-public-data.new_york.citibike_stations`
    WHERE num_bikes_available > 30
    
  3. Haz clic en Ejecutar (Run).

  4. Una vez completada la consulta, haz clic en Ver resultados (See results). También puedes hacer clic en Definir columnas (Define columns) en el paso dos.

    Visualiza los resultados

  5. Esto te hace avanzar al paso dos. En el paso dos, en Columna de geometría (Geometry column), elige WKT (WKT). Esto traza los puntos correspondientes a las estaciones de bicicleta en tu mapa.

    Resultados mapeados

Formatea tu visualización

En la sección Estilo (Style), se proporciona una lista de estilos visuales para personalizar la visualización. Algunas propiedades se aplican solo a algunos tipos de datos. Por ejemplo, circleRadius solo afecta a los puntos.

Las propiedades de estilo admitidas incluyen las siguientes opciones:

  • fillColor. El color de relleno de un polígono o un punto. Por ejemplo, las funciones "linear" o "interval" pueden usarse para mapear valores numéricos a un gradiente de color.
  • fillOpacity. Opacidad de relleno de un polígono o un punto. Los valores deben encontrarse en el rango del 0 al 1, en el que 0 = transparente y 1 = opaco.
  • strokeColor: el color del trazo o contorno de un polígono o una línea.
  • strokeOpacity. La opacidad del contorno o contorno de un polígono o una línea. Los valores deben encontrarse en el rango del 0 al 1, en el que 0 = transparente y 1 = opaco.
  • strokeWeight: el ancho del trazo o contorno en píxeles de un polígono o línea.
  • circleRadius. El radio del círculo que representa un punto en píxeles. Por ejemplo, una función “lineal” puede usarse a fin de asignar valores numéricos de modo que se indiquen los tamaños para crear un estilo de diagrama de dispersión.

Cada estilo puede recibir un valor global (que se aplique a todos los resultados) o uno basado en los datos (que se aplique de maneras distintas según los datos en cada fila de resultados). En el caso de los valores basados en los datos, se usan las siguientes opciones para determinar el resultado:

  • function (función): Una función que se usa para procesar un valor de estilo a partir de los valores de un campo.
  • identidad (identity): se usa el valor de los datos de cada campo como el valor de estilo.
  • categórico (categorical): se asignan uno a uno los valores de los datos de cada campo enumerado en el dominio hacia los estilos correspondientes en el rango.
  • intervalo (interval): los valores de los datos de cada campo se redondean hacia abajo hasta el valor más cercano en el dominio y, luego, se les da el estilo correspondiente en el rango.
  • lineal (linear): los valores de los datos de cada campo se interpolan de forma lineal con los valores del dominio y se les da estilo según una combinación de los estilos correspondientes en el rango.
  • campo (field): se usa el campo especificado en los datos como los datos de entrada para la función de estilo.
  • domain. Lista ordenada de valores de entrada de muestra de un campo. Los datos de entrada (dominio) de muestra se asocian con los datos de salida (rango) de muestra basados en la función determinada y se usan con el fin de inferir valores de estilo para todos los datos de entrada (incluso aquellos que no estén enumerados en el dominio). Los valores en el dominio deben tener el mismo tipo (texto, número, etc.) que los valores del campo que estás visualizando.
  • range. Una lista de valores de salida de muestra para la regla de estilo. Los valores en el rango deben tener el mismo tipo (color o número) que la propiedad de estilo que estás controlando. Por ejemplo, el rango de la propiedad fillColor debería tener solo colores.

Para formatear tu mapa, haz lo siguiente:

  1. Haz clic en Add styles (Agregar estilos) en el paso dos o haz clic en el paso tres, Style (Estilo).

  2. Cambia el color de tus puntos. Haz clic en fillColor.

  3. En el campo Valor (Value), ingresa #0000FF, el código de color HTML para azul.

    Color de relleno

  4. Examina tu mapa. Si detienes el cursor sobre uno de tus puntos, se muestra el valor.

    Detalles del punto del mapa

  5. Haz clic en fillOpacity.

  6. En el campo Valor (Value), ingresa .5.

    Opacidad del relleno

  7. Examina tu mapa. El color de relleno de los puntos ahora es semitransparente.

    Mapa con puntos semitransparentes

  8. Cambia el tamaño de los puntos en función del número de bicicletas disponibles. Haz clic en circleRadius.

  9. En el panel circleRadius, haz lo siguiente:

    1. Haz clic en Data driven (Basado en los datos).
    2. En Función (Function), elige lineal (linear).
    3. En Campo(Field), selecciona num_bikes_available.
    4. En Dominio (Domain), ingresa 30 en el primer cuadro y 60 en el segundo.
    5. En Rango, ingresa 5 en el primer cuadro y 20 en el segundo.

      Radio del círculo

  10. Examina tu mapa. El radio de cada círculo ahora corresponde al número de bicicletas disponibles en esa ubicación.

    Mapa final

  11. Cierra Geo Viz.

Limpieza

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud Platform por los recursos que usaste en este instructivo:

  • Puedes borrar el proyecto que creaste.
  • O puedes conservar el proyecto y usarlo a futuro.

Para borrar el proyecto, haz lo siguiente:

  1. En Cloud Console, ve a la página Administrar recursos.

    Ir a la página Administrar recursos

  2. En la lista de proyectos, selecciona el proyecto que deseas borrar y haz clic en Borrar .
  3. En el cuadro de diálogo, escribe el ID del proyecto y haz clic en Cerrar para borrar el proyecto.

Próximos pasos