Prueba BigQuery DataFrames

BigQuery DataFrames incorpora a BigQuery el aprendizaje automático (AA) y el análisis de Python escalables. Las operaciones se ejecutan en BigQuery con procesamiento del servidor, lo que te permite analizar y modelar grandes conjuntos de datos sin estar limitado por la memoria local o del notebook. Puedes usar una sintaxis similar a pandas (bigframes.pandas) y BigQuery ML (bigframes.bigquery) sin escribir SQL.

Usa esta guía de inicio rápido para realizar las siguientes tareas de análisis y AA mediante la API de BigQuery DataFrames en un notebook de BigQuery:

  • Crea un DataFrame sobre el conjunto de datos públicos bigquery-public-data.ml_datasets.penguins.
  • Calcula la masa corporal promedio de un pingüino.
  • Limpia y prepara un subconjunto de los datos de pingüinos para el entrenamiento.
  • Entrena un modelo de regresión lineal con bigframes.bigquery.ml.create_model.
  • Evalúa el modelo con bigframes.bigquery.ml.evaluate.

Antes de comenzar

  1. Accede a tu Google Cloud cuenta de. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. 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 role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  4. Verifica que la facturación esté habilitada para tu Google Cloud proyecto.

  5. Verifica que la API de BigQuery esté habilitada.

    Habilitación de la API

    Si creaste un proyecto nuevo, la API de BigQuery se habilita automáticamente.

Permisos necesarios

Para crear y ejecutar notebooks, necesitas los siguientes roles de Identity and Access Management (IAM):

Crea un notebook

Sigue las instrucciones en Crea un notebook desde el editor de BigQuery para crear un notebook nuevo.

Probar BigQuery DataFrames

Prueba BigQuery DataFrames mediante estos pasos:

  1. Crea una celda de código nueva en el notebook.
  2. Agrega el siguiente código a la celda de código:

    import bigframes.pandas as bpd
    
    # Set BigQuery DataFrames options
    # Note: The project option is not required in all environments.
    # On BigQuery Studio, the project ID is automatically detected.
    bpd.options.bigquery.project = your_gcp_project_id
    
    # Use "partial" ordering mode to generate more efficient queries, but the
    # order of the rows in DataFrames may not be deterministic if you have not
    # explictly sorted it. Some operations that depend on the order, such as
    # head() will not function until you explictly order the DataFrame. Set the
    # ordering mode to "strict" (default) for more pandas compatibility.
    bpd.options.bigquery.ordering_mode = "partial"
    
    # Create a DataFrame from a BigQuery table
    query_or_table = "bigquery-public-data.ml_datasets.penguins"
    df = bpd.read_gbq(query_or_table)
    
    # Efficiently preview the results using the .peek() method.
    df.peek()
    
  3. Modifica la línea bpd.options.bigquery.project = your_gcp_project_id para especificar el ID de tu Google Cloud proyecto. Por ejemplo, bpd.options.bigquery.project = "myProjectID".

  4. Ejecuta la celda de código.

    El código devuelve un objeto DataFrame con datos sobre los pingüinos.

  5. Crea una celda de código nueva en el notebook y agrega el siguiente código:

    # Use the DataFrame just as you would a pandas DataFrame, but calculations
    # happen in the BigQuery query engine instead of the local system.
    average_body_mass = df["body_mass_g"].mean()
    print(f"average_body_mass: {average_body_mass}")
    
  6. Ejecuta la celda de código.

    El código calcula la masa corporal promedio de los pingüinos y la imprime en la Google Cloud consola.

  7. Crea una celda de código nueva en el notebook y agrega el siguiente código:

    import bigframes.bigquery as bbq
    from google.cloud import bigquery
    
    # Ensure a dataset exists to store the model
    client = bigquery.Client(project=bpd.options.bigquery.project)
    client.create_dataset("bq_quickstart", exists_ok=True)
    
    # Filter down to the Adelie Penguin species
    adelie_data = df[df.species == "Adelie Penguin (Pygoscelis adeliae)"]
    
    # Drop the columns that are not needed
    adelie_data = adelie_data.drop(columns=["species"])
    
    # Drop rows with nulls to get the training data
    training_data = adelie_data.dropna()
    
    # Train a linear regression model
    model_name = f"{bpd.options.bigquery.project}.bq_quickstart.penguin_weight"
    model_metadata = bbq.ml.create_model(
        model_name,
        replace=True,
        options={"model_type": "LINEAR_REG"},
        training_data=training_data.rename(columns={"body_mass_g": "label"}),
    )
    
    # Evaluate the model
    evaluation = bbq.ml.evaluate(model_name)
    print(evaluation)
    
  8. Ejecuta la celda de código.

    El código entrena el modelo de regresión lineal directamente en BigQuery y devuelve las métricas de evaluación del modelo.

Limpia

La manera más fácil de eliminar la facturación es borrar el proyecto que tú creaste para el instructivo.

Para borrar el proyecto, haz lo siguiente:

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

    Ir a Administrar recursos

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

¿Qué sigue?