데이터베이스 연결 풀링

연결 풀링을 사용 설정하면 PostgreSQLSnowflake 데이터베이스 언어에서 사전 구성된 연결 풀을 사용할 수 있습니다.

해당 언어에서 지원하는 경우 데이터베이스 연결 풀링을 사용하면 Looker가 JDBC 드라이버를 통해 연결 풀을 사용할 수 있습니다. 데이터베이스 연결 풀링은 더 빠른 쿼리 성능을 가능하게 해줍니다. 새 쿼리를 수행할 때 새 데이터베이스 연결을 만들 필요가 없고 대신 연결 풀의 기존 연결을 사용할 수 있습니다. 연결 풀링 기능은 쿼리 실행 후 연결을 삭제하고 쿼리 실행이 종료된 후 연결을 재사용할 수 있도록 보장합니다.

Looker에서 데이터베이스 연결을 만들거나 수정할 때 데이터베이스 연결 풀링 옵션을 사용하여 연결 풀링을 사용 설정할 수 있습니다.

Looker는 다음 사항이 모두 참인 경우 연결에서 연결 풀링을 사용합니다.

연결 풀을 사용할 때의 몇 가지 유의사항이 있습니다.

  • 사용자 속성 값이 동일하면 여러 사용자가 연결 풀을 공유합니다. 사용자 속성 집합에서 값이 고유하거나 서로 다른 사용자는 데이터베이스에 연결할 때 고유한 연결 풀을 사용합니다.

  • 모든 데이터베이스 노드에서 연결 풀에 수행할 수 있는 최대 연결 수는 데이터베이스의 연결 페이지에 있는 노드당 최대 연결 수 필드에 있는 값으로 제한됩니다.

  • 연결 풀에서 수행되는 동시 쿼리 수가 최대 연결 수를 초과하면 이전 쿼리가 실행될 때까지 쿼리가 Looker에서 큐에 추가됩니다.

  • 고유한 JDBC 연결 문자열은 고유한 연결 풀을 만듭니다. 예를 들어 데이터베이스에 대해 역할 기반의 액세스 제어를 지시하는 고유한 데이터베이스 사용자 이름 또는 데이터베이스 그룹 이름은 고유한 JDBC 연결 문자열을 만든 다음 고유한 연결 풀을 만듭니다. 예를 들어 회사의 재무 그룹은 데이터베이스의 모든 테이블에 대해 액세스 권한을 부여하는 데이터베이스 역할을 가질 수 있지만, 영업 및 마케팅팀은 데이터베이스 테이블 중 일부에만 액세스 권한을 부여하는 데이터베이스 역할을 가질 수 있습니다. 이 경우 각 그룹은 고유한 JDBC 연결 문자열 및 고유한 연결 풀을 갖습니다. 세 번째 그룹은 데이터베이스에 대해 자체 액세스 권한을 가진 삽입된 분석 고객 집합일 수 있습니다. 삽입된 분석 고객은 고유한 JDBC 문자열 및 고유한 연결 풀을 갖게 되므로, 재무 또는 영업 및 마케팅 그룹에서 사용되지 않는 고유한 연결 집합을 갖습니다.

  • SQL 쿼리의 WHERE 절은 새 연결 풀을 일으키지 않습니다. WHERE 절은 JDBC 연결 문자열에 영향을 주지 않으므로 새 연결 풀이 생성되지 않습니다. 예를 들어 고유한 액세스 필터는 JDBC 연결 문자열이 아닌 쿼리에서 SQL WHERE 절을 수정하므로 고유한 액세스 필터가 새 연결 풀을 만들지 않습니다.

  • 여러 연결 풀이 생성될 때 최대 연결 수는 여러 풀로 파편화되고, 각 풀에 사용 가능한 연결 하위 집합이 포함됩니다. 이렇게 되는 이유는 최대 연결 수가 최대 연결 값을 초과할 수 없기 때문입니다.

데이터베이스 연결 풀링을 위한 언어 지원

데이터베이스 연결 풀링을 사용하는 기능은 Looker 연결에서 사용하는 데이터베이스 언어에 따라 다릅니다. 최신 버전의 Looker에서는 다음 언어가 데이터베이스 연결 풀링을 지원합니다.

언어 지원 여부
Actian Avalanche
아니요
Amazon Athena
아니요
Amazon Aurora MySQL
아니요
Amazon Redshift
No
Apache Druid
아니요
Apache Druid 0.13 이상
아니요
Apache Druid 0.18 이상
아니요
Apache Hive 2.3 이상
아니요
Apache Hive 3.1.2 이상
아니요
Apache Spark 3 이상
아니요
ClickHouse
아니요
Cloudera Impala 3.1 이상
아니요
네이티브 드라이버를 사용하는 Cloudera Impala 3.1 이상
아니요
네이티브 드라이버를 사용하는 Cloudera Impala
아니요
DataVirtuality
아니요
Databricks
아니요
Denodo 7
아니요
Denodo 8
아니요
Dremio
아니요
Dremio 11 이상
아니요
Exasol
아니요
Firebolt
아니요
Google BigQuery Legacy SQL
아니요
Google BigQuery 표준 SQL
아니요
Google Cloud PostgreSQL
Google Cloud SQL
아니요
Google Spanner
아니요
Greenplum
HyperSQL
아니요
IBM Netezza
아니요
MariaDB
아니요
Microsoft Azure PostgreSQL
Microsoft Azure SQL 데이터베이스
아니요
Microsoft Azure Synapse Analytics
아니요
Microsoft SQL Server 2008 이상
아니요
Microsoft SQL Server 2012 이상
아니요
Microsoft SQL Server 2016
아니요
Microsoft SQL Server 2017 이상
아니요
MongoBI
아니요
MySQL
아니요
MySQL 8.0.12 이상
아니요
Oracle
아니요
Oracle ADWC
아니요
PostgreSQL 9.5 이상
PostgreSQL pre-9.5
PrestoDB
아니요
PrestoSQL
아니요
SAP HANA 2 이상
아니요
SingleStore
아니요
SingleStore 7 이상
아니요
Snowflake
Teradata
아니요
Trino
아니요
벡터
아니요
Vertica
No