Usar celdas SQL

En esta guía se describe cómo usar celdas SQL para consultar datos desde un cuaderno de Colab Enterprise.

Información general

Una celda de SQL es una celda de código que permite escribir, editar y ejecutar consultas de SQL desde un cuaderno de Colab Enterprise. Las celdas SQL ofrecen un flujo de trabajo alternativo a IPython Magics para BigQuery.

Funciones

Las celdas de SQL ofrecen las siguientes funciones:

  • Compatibilidad con la ejecución de prueba: validación de instrucciones SQL y una aproximación del número de bytes procesados por la consulta
  • Formato: comprobación de errores de palabras clave y resaltado de sintaxis
  • Nombres de variables de salida de DataFrame de BigQuery: haz referencia a la variable de salida desde otras celdas del cuaderno.
  • Sustitución de variables: haz referencia a variables de Python y celdas de SQL para admitir la parametrización y la capacidad de consultar los resultados de una consulta anterior.
  • Visor de conjuntos de resultados: visor de conjuntos de resultados tabulares ligero con paginación para conjuntos de resultados de gran tamaño.

Dialecto de SQL y fuente de datos admitidos

  • Las celdas SQL de Colab Enterprise admiten GoogleSQL.

  • Puedes ejecutar consultas de SQL en datos de BigQuery.

Limitaciones

Ten en cuenta las siguientes limitaciones al planificar tu proyecto:

  • Puedes ejecutar varias instrucciones SQL en una sola celda SQL, pero solo los resultados de la última instrucción SQL se guardan en un DataFrame.

Antes de empezar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery, Compute Engine, Dataform, and Vertex AI APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery, Compute Engine, Dataform, and Vertex AI APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  8. Roles obligatorios

    Para obtener los permisos que necesitas para crear un cuaderno de Colab Enterprise, ejecutar el código del cuaderno en un tiempo de ejecución y usar datos de BigQuery en el cuaderno, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el proyecto:

    Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar acceso a proyectos, carpetas y organizaciones.

    También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.

    Crear una celda SQL

    Para crear una celda SQL en Colab Enterprise, sigue estos pasos:

    1. En la consola, ve a la página Mis cuadernos de Colab Enterprise. Google Cloud

      Ir a Mis cuadernos

    2. En el menú Región, selecciona la región que contiene tu cuaderno.

    3. Haz clic en el cuaderno que quieras abrir. Si aún no has creado ningún cuaderno, crea uno.

    4. En la barra de herramientas, para añadir una celda SQL, haz clic en el menú  Opciones para insertar celdas de código y selecciona Añadir celda SQL.

      La celda de SQL se añade al cuaderno.

    Introducir y ejecutar una consulta

    1. En la celda SQL, introduce una consulta SQL. Para obtener una descripción general de las instrucciones y los dialectos de SQL admitidos, consulta el artículo Introducción a SQL en BigQuery.

      Puedes hacer referencia a variables de Python en expresiones incluyendo el nombre de la variable entre llaves ({ }). Por ejemplo, si has especificado un valor en una variable de Python llamada my_threshold, puedes limitar el conjunto de resultados con una consulta similar a la siguiente:

      SELECT * FROM my_dataset.my_table WHERE x > {my_threshold};
          
    2. Coloca el puntero sobre la celda de SQL que quieras ejecutar y, a continuación, haz clic en el botón  Ejecutar celda.

    El resultado de la consulta se guarda automáticamente como un DataFrame de BigQuery con el mismo nombre que el título de la celda de SQL.

    Interactuar con el conjunto de resultados

    Puedes interactuar con el conjunto de resultados como un DataFrame de BigQuery o un DataFrame de pandas.

    Puedes encadenar instrucciones SQL usando el mismo nombre de variable de celda SQL. Por ejemplo, puedes usar los DataFrames de BigQuery generados por el conjunto de resultados como tablas en una consulta posterior. Para ello, incluye el nombre del DataFrame entre llaves ({ }). Consulta el siguiente ejemplo, que hace referencia al resultado de una consulta anterior que se guardó como un DataFrame llamado df:

    SELECT * FROM {df};

    Siguientes pasos