Para conectar Looker a Snowflake, sigue estos pasos:
- Crea un usuario de Looker en Snowflake y aprovisiona el acceso.
- Configura una conexión de base de datos en Looker.
Encripta el tráfico de red
Se recomienda encriptar el tráfico de red entre la aplicación de Looker y tu base de datos. Considera una de las opciones que se describen en la página de documentación Habilita el acceso seguro a la base de datos.
Crea un usuario de Looker en Snowflake
Te recomendamos los siguientes comandos para crear el usuario de Looker. Asegúrate de ejecutar cada línea de forma individual o selecciona la opción All Queries en el panel de conexión de Snowflake para garantizar que se ejecuten todas las líneas (de forma predeterminada, Snowflake solo ejecuta las líneas seleccionadas):

Te recomendamos agregar la palabra clave ON FUTURE a cada instrucción GRANT para que los objetos recién creados tengan los mismos permisos sin que se requiera ninguna otra acción.
-- change role to ACCOUNTADMIN
use role ACCOUNTADMIN;
-- create role for looker
create role if not exists looker_role;
grant role looker_role to role SYSADMIN;
-- Note that we are not making the looker_role a SYSADMIN,
-- but rather granting users with the SYSADMIN role to modify the looker_role
-- create a user for looker
create user if not exists looker_user
password = <enter password here>;
grant role looker_role to user looker_user;
alter user looker_user
set default_role = looker_role
default_warehouse = looker_wh;
-- change role
use role SYSADMIN;
-- create a warehouse for looker (optional)
create warehouse if not exists looker_wh
-- set the size based on your dataset
warehouse_size = medium
warehouse_type = standard
auto_suspend = 1800
auto_resume = true
initially_suspended = true;
grant all privileges
on warehouse looker_wh
to role looker_role;
-- grant read only database access (repeat for all database/schemas)
grant usage on database <database> to role looker_role;
grant usage on schema <database>.<schema> to role looker_role;
-- rerun the following any time a table is added to the schema
grant select on all tables in schema <database>.<schema> to role looker_role;
-- or
grant select on future tables in schema <database>.<schema> to role looker_role;
-- create schema for looker to write back to
use database <database>;
create schema if not exists looker_scratch;
use role ACCOUNTADMIN;
grant ownership on schema looker_scratch to role SYSADMIN revoke current grants;
grant all on schema looker_scratch to role looker_role;
Crea la conexión de Looker a tu base de datos
En la sección Admin de Looker, selecciona Connections y, luego, haz clic en Add Connection.
Completa los detalles de la conexión. La mayoría de los parámetros de configuración son comunes en la mayoría de los dialectos de bases de datos. Consulta la página de documentación Conecta Looker a tu base de datos para obtener más información. Las siguientes descripciones de configuración contienen notas específicas de Snowflake:
Database Settings - Host: Ingresa el nombre de host de Snowflake. Se verá como <account_name>.snowflakecomputing.com. Consulta los ejemplos de nombres de cuentas de Snowflake por región para asegurarte de usar el valor correcto para tu implementación.
Database Settings - Authentication Method: Selecciona uno de los siguientes métodos de autenticación:
Database Account solo debe ser utilizado por los clientes existentes que necesiten tiempo para realizar la transición a un método de autenticación de varios factores antes de la fecha límite de noviembre de 2025 de Snowflake. Especifica el Username y la Password de la cuenta de usuario de Snowflake que se usará para conectarse a Looker.
Los clientes que deseen implementar la autenticación de par de claves de Snowflake para conectarse con su base de datos deben usar Key Pair. Especifica la cuenta de usuario que se usará para conectarse a Snowflake en el campo Username. Sube un archivo de claves con formato p8 sin encriptar en el campo Key Pair File ; no se admiten archivos de claves encriptados. En la documentación de Snowflake, se describe cómo crear un archivo de claves privadas.
Los clientes que no necesiten tablas derivadas persistentes (PDT) y deseen configurar OAuth para la conexión deben usar OAuth.
Configuración opcional - Habilitar PDT: Las PDT no son compatibles con las conexiones de Snowflake que usan la autenticación de OAuth. Si se necesitan PDT, usa la opción de autenticación Key Pair.
Configuración opcional - Parámetros JDBC adicionales: Agrega parámetros JDBC adicionales del controlador JDBC de Snowflake.
- Agrega
warehouse=<YOUR WAREHOUSE NAME>. Además, de forma predeterminada, Looker establecerá los siguientes parámetros de Snowflake en cada sesión:
TIMESTAMP_TYPE_MAPPING=TIMESTAMP_LTZJDBC_TREAT_DECIMAL_AS_INT=FALSETIMESTAMP_INPUT_FORMAT=AUTOAUTOCOMMIT=TRUEPara anular cada uno de estos parámetros, establece un valor alternativo en el campo Additional JDBC parameters, por ejemplo:
&AUTOCOMMIT=FALSE
Para verificar que la conexión se haya realizado correctamente, haz clic en Test. Consulta la página de documentación Prueba la conectividad de la base de datos para obtener información sobre la solución de problemas.
Para guardar esta configuración, haz clic en Connect.
Designa almacenes de Snowflake por grupo o por usuario
Puedes usar atributos de usuario de Looker para asignar almacenes de Snowflake separados a usuarios o grupos individuales de Looker. Esto es útil, por ejemplo, si tienes usuarios que requieren diferentes niveles de potencia de procesamiento. Puedes asignar un almacén con mayores recursos de procesamiento solo a los usuarios que lo necesiten, mientras que asignas un almacén con menos recursos a los usuarios con menos necesidades.
Para designar almacenes por grupo o por usuario, sigue estos pasos:
- Agrega los grupos o usuarios en Looker.
Define un atributo de usuario en Looker en el que se almacenarán los nombres de los almacenes de Snowflake. Puedes asignar cualquier nombre a este atributo, como
snowflake_wh.
En el atributo de usuario que acabas de definir, asigna los valores de nombre del almacén a los grupos o usuarios que necesitarán un acceso diferente al almacén.

En el campo Additional JDBC parameters de la página Connection Settings , agrega lo siguiente y reemplaza
snowflake_warehousepor el nombre del atributo de usuario que definiste:warehouse={{ _user_attributes['snowflake_warehouse'] }}Para probar la configuración de conexión individual, puedes sudo como un usuario al que le asignaste un valor de nombre de almacén.
Administra la función de suspensión automática de Snowflake
Los almacenes de Snowflake tienen una función de suspensión automática que está habilitada de forma predeterminada. Después de un período especificado, el almacén se suspenderá automáticamente. Si el almacén está suspendido, todas las consultas producen un error. Este error no es visible en los paneles (por lo general, estos errores no muestran datos), pero es visible para cualquier usuario que realice consultas con la página Explorar.
Por lo general, se usan dos métodos para administrar esto:
Snowflake tiene una función de reanudación automática que reanudará el almacén cuando se consulte. Sin embargo, la reanudación del almacén puede tardar hasta cinco minutos, lo que hace que las consultas dejen de responder durante cinco minutos antes de que se muestren. La reanudación automática no se puede configurar en Looker. Habilita esta función en la pestaña Warehouses de la IU de Snowflake:

Si se habilitaron las tablas derivadas persistentes (PDT), la configuración predeterminada de Looker es verificar la regeneración de la tabla derivada cada 5 minutos. Esta verificación mantendrá activos los almacenes de Snowflake. Sin embargo, es posible que desees que Snowflake suspenda los almacenes durante las horas no laborales para reducir los costos. Para ello, modifica el programa de regeneración de PDT, como se describe en la documentación del programa de mantenimiento.
Compatibilidad con PDT
Las PDT no son compatibles con las conexiones de Snowflake que usan OAuth.
Para la compatibilidad con tablas derivadas persistentes, crea una cuenta de usuario de Snowflake para las PDT que tenga acceso de escritura a tu base de datos y al esquema temporal que Looker usará para crear las PDT. En la página Connections Settings de Looker, en la pestaña Optional Settings , en la sección Persistent Derived Table (PDT) Settings , activa el botón de activación Enable PDTs. Luego, en el campo Temp database, ingresa el nombre del esquema temporal que Looker usará para crear PDT.
Para las conexiones de Snowflake, Looker establece el valor del parámetro AUTOCOMMIT de Snowflake en TRUE, que es el valor predeterminado de Snowflake. AUTOCOMMIT es obligatorio para los comandos SQL que ejecuta Looker para mantener su sistema de registro de PDT.
Configura OAuth para las conexiones de Snowflake
Looker admite OAuth para las conexiones de Snowflake, lo que significa que cada usuario de Looker se autentica en la base de datos con su propia cuenta de usuario de OAuth.
OAuth permite que los administradores de bases de datos realicen las siguientes tareas:
- Auditar qué usuarios de Looker ejecutan consultas en la base de datos
- Aplicar controles de acceso basados en roles con permisos a nivel de la base de datos
- Usar tokens de OAuth para todos los procesos y acciones que acceden a la base de datos, en lugar de incorporar IDs y contraseñas de bases de datos en varios lugares
- Revocar la autorización de un usuario determinado directamente a través de la base de datos
Con las conexiones de Snowflake que usan OAuth, los usuarios deben volver a acceder periódicamente cuando vencen sus tokens de OAuth. La antigüedad máxima de los tokens de OAuth de Snowflake se establece a través de Snowflake.
Ten en cuenta lo siguiente para las conexiones de OAuth a nivel de la base de datos:
- Las tablas derivadas persistentes (PDT) no son compatibles con las conexiones de Snowflake con OAuth.
- Si un usuario deja que venza su token de OAuth, se verán afectados todos los programas o alertas de Looker que posea. Para evitar esto, Looker enviará un correo electrónico de notificación al propietario de cada programa y cada alerta 14 días, 7 días y 1 día antes de que venza el token. El usuario puede ir a su página de usuario de Looker para volver a autorizar Looker a la base de datos y evitar cualquier interrupción en sus programas y alertas. Consulta la página de documentación Personaliza la configuración de la cuenta de usuario para obtener más detalles.
- Debido a que las conexiones de bases de datos que usan OAuth son "por usuario", las políticas de almacenamiento en caché también son por usuario y no solo por consulta. Esto significa que Looker usará los resultados almacenados en caché solo si el mismo usuario ejecutó la misma consulta dentro del período de almacenamiento en caché. Para obtener más información sobre el almacenamiento en caché, consulta la página de documentación Almacena consultas en caché.
- Cuando usas OAuth, no puedes cambiar a diferentes roles en la cuenta de usuario de Snowflake. Como se describe en la documentación de Snowflake, Snowflake usa el rol predeterminado de la cuenta del usuario de Snowflake, a menos que el rol predeterminado sea ACCOUNTADMIN o SECURITYADMIN. Debido a que estos roles están bloqueados para OAuth, Snowflake usará el rol PUBLIC en su lugar. Consulta la documentación de Snowflake para obtener más información.
- Cuando un administrador de Looker usa sudo como otro usuario, el administrador usará el token de acceso de OAuth de ese usuario. Si el token de acceso del usuario venció, el administrador no podrá crear un token nuevo en nombre del usuario con sudo. Consulta la página de documentación Usuarios para obtener información sobre el uso del comando
sudo.
Configura una base de datos de Snowflake para OAuth con Looker
Para crear una conexión de Snowflake a Looker con OAuth, debes configurar la integración de OAuth en Snowflake. Esto requiere una cuenta de usuario de Snowflake con permiso ACCOUNTADMIN.
Ejecuta el siguiente comando en Snowflake, en el que
<looker_hostname>es el nombre de host de tu instancia de Looker:CREATE SECURITY INTEGRATION LOOKER TYPE = OAUTH ENABLED = TRUE OAUTH_CLIENT = LOOKER OAUTH_REDIRECT_URI = 'https://<looker_hostname>/external_oauth/redirect';Para obtener el ID y el secreto del cliente de OAuth, ejecuta el siguiente comando:
SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('LOOKER');La respuesta tendrá un
OAUTH_CLIENT_IDy unOAUTH_CLIENT_SECRETque necesitarás más adelante en este procedimiento.En Looker, crea una conexión nueva a tu almacén de Snowflake, como se describe en la sección Crea la conexión de Looker a tu base de datos de esta página. Cuando crees la conexión nueva, selecciona la opción OAuth en el campo Authentication. Cuando seleccionas la opción OAuth, Looker muestra los campos OAuth Client ID y OAuth Client Secret.
Pega los valores
OAUTH_CLIENT_IDyOAUTH_CLIENT_SECRETque obtuviste de tu base de datos anteriormente en este procedimiento.Completa el resto del procedimiento para conectar Looker a tu base de datos.
Prueba la conexión de OAuth
Una vez que configures la conexión de Looker a tu base de datos, puedes probar la conexión en sí misma de una de las siguientes maneras:
- Selecciona el botón Test en la parte inferior de la página Connections Settings, como se describe en la página de documentación Conecta Looker a tu base de datos.
- Selecciona el botón Test en la lista de la conexión en la página de administración Connections, como se describe en la página de documentación Connections.
Además, puedes probar la conexión y, luego, implementarla en un modelo. Para ello, sigue estos pasos:
- En Looker, ingresa al Modo de desarrollo.
- Navega a los archivos de proyecto de un proyecto de Looker que use tu conexión de Snowflake.
- Abre un archivo de modelo, reemplaza el valor
connectiondel modelo por el nombre de la nueva conexión de Snowflake y, luego, guarda el archivo de modelo. - Abre una de las exploraciones o paneles del modelo y ejecuta una consulta. Cuando intentes ejecutar una consulta, Looker te pedirá que accedas a Snowflake.
- Sigue las indicaciones de acceso para Snowflake y, luego, ingresa tus credenciales de Snowflake.
Una vez que accedas correctamente a Snowflake, Looker te devolverá a tu consulta. Si la consulta se ejecuta correctamente, puedes confirmar el nuevo valor de conexión e implementar los cambios en la producción.
Accede a Snowflake para ejecutar consultas
Una vez que se configure la conexión de Snowflake para OAuth, se les pedirá a los usuarios que accedan a Snowflake antes de ejecutar consultas. Esto incluye consultas de exploraciones, paneles, Looks y el Ejecutor de SQL.

Los usuarios también pueden acceder a Snowflake desde la sección OAuth Connection Credentials en su página Account.
Para acceder a tu cuenta de Snowflake con Looker, sigue estos pasos:

- Haz clic en el menú de usuario de Looker.
- Selecciona Account.
- En la página Account , ve a la sección OAuth Connection Credentials y selecciona el botón Log In para la base de datos de Snowflake adecuada.
Si seleccionas Log In , se mostrará un diálogo de acceso a Snowflake. Ingresa tus credenciales de Snowflake, selecciona Log In y, luego, selecciona Allow para otorgar acceso a Looker a tu cuenta de Snowflake.
Una vez que accedas a Snowflake a través de Looker, podrás salir o volver a autorizar tus credenciales en cualquier momento a través de la página Account, como se describe en la página de documentación Personaliza tu cuenta de usuario.
Compatibilidad de características
Para que Looker admita algunas funciones, tu dialecto de base de datos también debe admitirlas.
A partir de Looker 25.18, Snowflake admite las siguientes funciones:
| Función | ¿Es compatible? |
|---|---|
| Nivel de asistencia | Admitido |
| Looker (Google Cloud Core) | |
| Agregaciones simétricas | |
| Tablas derivadas | |
| Tablas derivadas persistentes basadas en SQL | |
| Tablas derivadas persistentes nativas | |
| Vistas estables | |
| Eliminación de consultas | |
| Tablas dinámicas basadas en SQL | |
| Zonas horarias | |
| SSL | |
| Subtotales | |
| Parámetros adicionales de JDBC | |
| Distinción entre mayúsculas y minúsculas | |
| Tipo de ubicación | |
| Tipo de lista | |
| Percentil | |
| Percentil de valores distintos | |
| Mostrar procesos del Ejecutor de SQL | |
| Describir tabla del Ejecutor de SQL | |
| Mostrar índices del Ejecutor de SQL | |
| Seleccionar 10 del Ejecutor de SQL | |
| Recuento del Ejecutor de SQL | |
| Explicar SQL | |
| Credenciales de OAuth 2.0 | |
| Comentarios contextuales | |
| Agrupación de conexiones | |
| Esbozos de HLL | |
| Reconocimiento agregado | |
| PDT incrementales | |
| Milisegundos | |
| Microsegundos | |
| Vistas materializadas | |
| Medidas entre períodos | |
| Distinción de recuento aproximado |
Próximos pasos
Después de conectar tu base de datos a Looker, configura las opciones de acceso para tus usuarios.