Google BigQuery

Resumen

Elemento Descripción
Estado de la versión Disponibilidad general
Productos Power BI (Modelos semánticos)
Power BI (Flujos de datos)
Fabric (Flujo de datos Gen2)
Aplicaciones Power (Flujos de datos)
Información del Cliente (Flujos de datos)
Tipos de autenticación admitidos Cuenta de la organización
Cuenta de servicio

Nota:

Algunas capacidades pueden estar presentes en un producto, pero otras no, debido a los programas de implementación y las capacidades específicas del host.

Nota:

A partir de julio de 2021, Google dejó de admitir los inicios de sesión en las cuentas de Google desde los marcos de los navegadores integrados. Debido a este cambio, necesita actualización de su versión del espacio de trabajo de Power BI hasta junio de 2021 o posterior para admitir el inicio de sesión en Google.

Requisitos previos

Necesita una cuenta de Google o una cuenta del servicio de Google para iniciar sesión en Google BigQuery.

Funcionalidades admitidas

  • Importar
  • DirectQuery (modelos semánticos de Power BI)

Conectarse a loa datos de Google BigQuery desde el espacio de trabajo de Power Query

Para conectarte a Google BigQuery desde el espacio de trabajo de Power Query, siga estos pasos:

  1. En la experiencia de obtención de datos, seleccione Google BigQuery. La experiencia de obtención de datos en Power Query Desktop varía entre las aplicaciones. Para obtener más información sobre la experiencia de obtención de datos de Power Query Desktop para la aplicación, vaya a Dónde obtener datos.

  2. Si desea utilizar opciones avanzadas, seleccione Opciones avanzadas. De lo contrario, seleccione OK para continuar. Más información: Conectar con opciones avanzadas

    Imagen que muestra el cuadro de diálogo inicial con la selección de opciones avanzadas.

  3. El conector de Google BigQuery admite la conexión a través del inicio de sesión de una cuenta de la organización o de una cuenta del servicio. En este ejemplo, usará la cuenta de la organización para iniciar sesión. Seleccione Iniciar Sesión para continuar.

    Inicie sesión en Google BigQuery.

    También puede iniciar sesión con una cuenta del servicio de Google. En este caso, seleccione el Inicio de Sesión de la Cuenta del Servicio e ingrese el correo electrónico de su cuenta del servicio y el contenido del archivo de la clave JSON de su cuenta del servicio. A continuación, seleccione Conectar.

  4. Un cuadro de diálogo de Inicio de sesión con Google aparece. Seleccione su cuenta de Google y apruebe la conexión al espacio de trabajo de Power BI.

    Inicie sesión en Google.

  5. Una vez que haya iniciado sesión, seleccione Conectar para continuar.

    Conéctese a los datos de Google BigQuery.

  6. Una vez que se conecte exitosamente, un Navegador aparece la ventana y le muestra los datos disponibles en el servidor. Seleccione sus datos en el navegador. A continuación, seleccione Transformar Datos para transformar los datos en Power Query o Cargar para cargar los datos en el espacio de trabajo de Power BI.

    Imagen del navegador de Power Query que carga datos de Google BigQuery en la aplicación de escritorio.

Conectarse a los datos de Google BigQuery desde Power Query Online

Para conectarse a Google BigQuery desde Power Query Online, siga estos pasos:

  1. En la experiencia de obtención de datos, seleccione Google BigQuery. Las distintas aplicaciones tienen diferentes formas de obtener datos en Power Query Online. Para obtener más información sobre cómo acceder a la experiencia de obtención de datos de Power Query Online desde la aplicación, vaya a Dónde obtener datos.

    Captura de pantalla del cuadro de diálogo Obtener datos con énfasis en el conector de Google BigQuery.

  2. En el el cuadro de diálogo de la Base de datos de Google BigQuery, es posible que deba crear una nueva conexión o seleccionar una conexión existente. Si utiliza datos locales, seleccione una puerta de enlace de datos local. A continuación, seleccione Iniciar sesión.

    Imagen del cuadro de diálogo de inicio de sesión.

  3. Un cuadro de diálogo de Inicio de sesión con Google aparece. Seleccione su cuenta de Google y apruebe la conexión.

    Nota:

    Aunque el cuadro de diálogo de iniciar sesión indica que continuará con el espacio de trabajo de Power BI una vez que haya iniciado sesión, se le enviará a su aplicación en línea.

    Imagen del cuadro de diálogo de inicio de sesión de Google.

  4. Si desea utilizar opciones avanzadas, seleccione Opciones avanzadas. Más información: Conectar con opciones avanzadas

  5. Una vez que haya iniciado sesión, seleccione Siguiente para continuar.

    Imagen del usuario que inició sesión correctamente.

  6. Una vez que se conecte exitosamente, un Navegador aparece la ventana y le muestra los datos disponibles en el servidor. Seleccione sus datos en el navegador. A continuación, seleccione Siguiente para transformar los datos en Power Query.

    Imagen del navegador de Power Query que carga datos de Google BigQuery en la aplicación en línea.

Conectarse mediante las opciones avanzadas

Tanto el espacio de trabajo de Power Query como Power Query Online proporcionan un conjunto de opciones avanzadas que puede agregar a la consulta de ser necesario.

Visualización de opciones avanzadas disponibles en Power Query Desktop.

En la siguiente tabla se enumeran todas las opciones avanzadas que puede configurar en el espacio de trabajo de Power Query y en Power Query Online.

Opción avanzada Descripción
Identificación del proyecto de facturación Un proyecto contra el cual Power Query ejecutará consultas. Los permisos y la facturación están vinculados a este proyecto. Si no se proporciona una identificación del proyecto de facturación, se utilizará de forma predeterminada el primer proyecto disponible devuelto por las API de Google.
Usar Api de Almacenamiento Una bandera que permite usar el API de almacenamiento de Google BigQuery. Esta opción es verdadera de forma predeterminada. Esta opción se puede establecer en falso para no usar la API de almacenamiento y usar la API REST en su lugar.
Duración del tiempo de espera de la conexión La configuración de la conexión estándar (en segundos) que controla cuánto tiempo espera Power Query a que se complete la conexión. Puede cambiar este valor si la conexión no se completa antes de 15 segundos (el valor predeterminado.)
Duración del tiempo de espera del comando Cuánto tiempo espera Power Query a que se complete una consulta y devuelva los resultados. El valor predeterminado depende del valor predeterminado del controlador. Puede ingresar otro valor en minutos para mantener la conexión abierta por más tiempo.
Id. de proyecto El proyecto en el cual desea ejecutar las consultas nativas. Esta opción solo está disponible en Power Query Desktop.
Instrucción SQL Para obtener información, vaya a Importar datos de una base de datos mediante una consulta de base de datos nativa. En esta versión de la funcionalidad de la consulta de la base de datos nativa, debe utilizar los nombres de la tabla completos en el formato Database.Schema.Table, por ejemplo SELECT * FROM DEMO_DB.PUBLIC.DEMO_TABLE. Esta opción solo está disponible en Power Query Desktop.

Una vez que haya seleccionado las opciones avanzadas que necesita, seleccione OK en el espacio de trabajo de Power Query o Siguiente en Power Query Online para conectarse a sus datos de Google BigQuery.

Limitaciones y consideraciones

En esta sección se describen las limitaciones o consideraciones del conector de Google BigQuery.

Conexión a Google BigQuery en el espacio de trabajo de Power BI

Existen algunos límites y consideraciones a tener en cuenta al usar el conector de Google BigQuery con Power BI.

Disponibilidad de los conectores

El conector de Google BigQuery está disponible en Power BI Desktop y en el servicio Power BI. En el servicio Power BI, se puede acceder al conector mediante la conexión de nube a nube de Power BI a Google BigQuery.

Error del "Acceso denegado"

Al intentar conectarse a Google BigQuery desde el espacio de trabajo de Power BI Desktop, es posible que aparezca el siguiente mensaje de error:

Datasource.Error: ODBC: ERROR [HY000][Microsoft][BigQuery] (100) Error interacting with REST API: Access Denied: Project <project name>: The user <user name> bigquery.jobs.create permissions in project <project name>.

En este caso, es posible que deba ingresar una identificación del proyecto de facturación en la opción avanzada del Proyecto de Facturación en la configuración de conexión Power Query .

Además, si también crea un informe en el servicio Power BI con una puerta de enlace, es posible que siga recibiendo este error. En este caso, debe incluir manualmente la identificación del proyecto de facturación en el código M para la conexión mediante el editor de Power Query o la barra de la fórmulas de Power Query. Por ejemplo:

Source = GoogleBigQuery.Database([BillingProject="Include-Billing-Project-Id-Here"])

Campos anidados

Para optimizar las consideraciones de rendimiento, Google BigQuery funciona bien con conjuntos de datos grandes cuando se desnormalizan, aplanan y anidan.

El conector de Google BigQuery admite campos anidados, que se cargan como columnas de texto en el formato JSON.

Compatibilidad con campos anidados de Google BigQuery.

Los usuarios deben seleccionar Transformar Datos y luego usar las capacidades de análisis JSON en el editor de Power Query para extraer los datos.

  1. Bajo la pestaña de la cinta Transformar, la categoría de la Columna de Texto, seleccionar Analizar y luego JSON.
  2. Extraiga los campos de registro JSON con el comando de la opción de Expandir Columna.

Configurar una cuenta del servicio de Google

Para obtener mayor información acerca de la configuración o el uso de cuentas del servicio de Google, vaya hasta la Creación y administración de claves de cuenta del servicio en los documentos de Google.

Autenticación a través de una cuenta del servicio de Google

Cuando se autentica a través de una cuenta del servicio de Google en el espacio de trabajo de Power BI, el conector requiere de un formato de credenciales específico.

  • Correo electrónico de la cuenta del servicio: debe estar en el formato de correo electrónico
  • Contenido del archivo de la clave JSON de la cuenta del servicio: una vez que se descarga esta clave JSON, se deben eliminar todas las líneas nuevas del archivo para que el contenido esté en una línea. Una vez que el archivo JSON esté en ese formato, el contenido se puede pegar en este campo.

Cuando se autentica a través de una cuenta del servicio de Google en el servicio Power BI o Power Query Online, los usuarios deben usar la autenticación " Basic". El mapa del campo del Nombre de Usuario en el campo de arriba del Servicio de Correo Electrónico de la Cuenta, y el campo de la Contraseña de mapas al Contenido del archivo de clave JSON de la cuenta de servicio en el campo de arriba. Los requisitos del formato para cada credencial siguen siendo los mismos en el espacio de trabajo de Power BI, servicio de Power BI y Power Query Online.

No se puede autenticar con la API de almacenamiento de Google BigQuery

El conector de Google BigQuery utiliza la API de almacenamiento de Google BigQuery por defecto. Esta función está controlada por la opción avanzada llamada UseStorageAp. Es posible que tenga problemas con esta función si utiliza permisos granulares. En este escenario, es posible que vea el siguiente mensaje de error o que no obtenga ningún dato para su consulta:

ERROR [HY000] [Microsoft][BigQuery] (131) Unable to authenticate with Google BigQuery Storage API. Check your account permissions

Puede resolver este problema ajustando correctamente los permisos de usuario de la API de almacenamiento de BigQuery. Estos permisos de la API de almacenamiento son necesarios para acceder a los datos correctamente con la API de BigQueryStorage:

  • bigquery.readsessions.create: Crea una nueva sesión de lectura a través de la API de almacenamiento de BigQuery.
  • bigquery.readsessions.getData: Lee datos de una sesión de lectura a través de la API de almacenamiento de BigQuery.
  • bigquery.readsessions.update: Actualiza una sesión de lectura a través de la API de almacenamiento de BigQuery.

Por lo general, estos permisos se proporcionan en el BigQuery.User rol. Mayor información, Roles y permisos predefinidos de Google BigQuery

Si los pasos anteriores no resuelven el problema, puede deshabilitar la API de almacenamiento de BigQuery.

No se pueden usar datos de tipo Fecha y hora en el modo de consulta directa

Existe un problema conocido en el que el tipo DateTime no se admite a través de una consulta directa. Al seleccionar una columna con el tipo de fecha y hora, se producirá un error de " Consulta no válida" o un error visual.

Limitaciones en la columna de consulta que tiene el mismo nombre que el nombre de tabla

Al consultar una columna con el mismo nombre que el nombre de tabla, BigQuery interpreta la columna como una struct que incluye todas las columnas de la tabla en lugar de la columna especificada. Por ejemplo, SELECT debug FROM dataset.debug devuelve una struct con todas las columnas de la tabla de depuración, en lugar de la columna de depuración especificada. Este comportamiento no suele ser intuitivo y se está investigando una corrección. Hay dos soluciones alternativas disponibles:

  • Solución alternativa 1: Ajuste de la tabla con una vista que no entre en conflicto con el nombre de columna:CREATE VIEW dataset.new_view AS SELECT * FROM dataset.debug
  • Solución alternativa 2: Cambie el nombre de la columna para evitar conflictos con el nombre la tabla:ALTER TABLE dataset.debug RENAME COLUMN debug to new_debug
  • Solución alternativa 3: Cambie la consulta SELECT para usar table.column para hacer referencia a la columna de conflicto:SELECT debug.debug FROM dataset.debug