Agrupación de conexiones de la base de datos

La agrupación de conexiones permite usar grupos de conexiones preconfigurados en los dialectos de base de datos Amazon Redshift, PostgreSQL y Snowflake.

Esta opción permite que Looker use grupos de conexiones a través del controlador JDBC. La agrupación de conexiones de base de datos permite un rendimiento de consulta más rápido. Una consulta nueva no necesita crear una conexión de base de datos nueva, pero puede usar una conexión existente del grupo de conexiones. La capacidad de agrupación de conexiones garantiza que una conexión se limpie después de una ejecución de consulta y esté disponible para volver a usarla después de que finalice la ejecución de consulta.

Para habilitar la agrupación de conexiones, activa la función de Labs de Agrupación de conexiones de base de datos. Cuando la función de Labs está activada, si configuró grupos de conexiones en su base de datos y usa uno de los dialectos mencionados anteriormente, Looker usará la agrupación de conexiones.

Estos son algunos aspectos que debes tener en cuenta cuando usas grupos de conexiones:

  • Varios usuarios comparten un grupo de conexiones si los valores de sus atributos de usuario son idénticos. Los usuarios que tengan valores únicos o diferentes en su conjunto de atributos de usuario usarán grupos de conexiones únicos cuando se conecten a la base de datos.

  • La cantidad máxima de conexiones que se pueden realizar a los grupos de conexiones en todos los nodos de la base de datos está limitada por el valor del campo Conexiones máximas en la página Conexión de la base de datos.

  • Si la cantidad de consultas simultáneas que se emiten a un grupo de conexiones supera la cantidad máxima de conexiones, las consultas se ponen en cola en Looker hasta que se ejecutan consultas anteriores.

  • Las strings de conexión JDBC únicas crean grupos de conexión únicos. Por ejemplo, nombres de usuario o grupos de bases de datos únicos que determinan el control de acceso basado en funciones para la base de datos crearán strings de conexión JDBC únicas, que luego crearán grupos de conexiones únicos. Por ejemplo, un grupo de finanzas de una empresa puede tener una función de base de datos que le otorga acceso a todas las tablas de la base de datos, pero el equipo de ventas y marketing puede tener una función de base de datos que le otorgue acceso solo a un subconjunto de las tablas de base de datos. En este caso, cada grupo tendría una string de conexión de JDBC única y un grupo de conexiones único. Un tercer grupo podría ser un conjunto de clientes Con la tecnología de Looker (PBL) que tienen sus propios derechos de acceso a la base de datos. Los clientes del PBL también tendrían una string JDBC única y un grupo de conexiones único, por lo que también tendrían un conjunto único de conexiones que los grupos de finanzas o ventas y marketing no usan.

  • La cláusula WHERE en una consulta de SQL no genera grupos de conexión nuevos. La cláusula WHERE no tiene impacto en la string de conexión de JDBC, por lo que no se crea un grupo de conexiones nuevo. Por ejemplo, los filtros de acceso únicos modifican la cláusula WHERE de SQL en una consulta, no la string de conexión de JDBC, por lo que los filtros de acceso únicos no crearán grupos de conexiones nuevos.

  • Cuando se crean varios grupos de conexiones, la cantidad máxima de conexiones se fragmenta en varios grupos, y cada grupo contiene un subconjunto de conexiones disponibles. Esto ocurre porque la cantidad total de conexiones no puede exceder el valor máximo de conexiones.