데이터베이스 연결 풀링

연결 풀링을 사용하면 Amazon Redshift, PostgreSQL, Snowflake 데이터베이스 언어에서 사전 구성된 연결 풀을 사용할 수 있습니다.

이 옵션을 사용하면 Looker가 JDBC 드라이버를 통해 연결 풀을 사용할 수 있습니다. 데이터베이스 연결 풀링을 사용하면 쿼리 성능이 더 빨라집니다. 새 쿼리는 새 데이터베이스 연결을 만들 필요가 없지만 대신 연결 풀의 기존 연결을 사용할 수 있습니다. 연결 풀링 기능을 통해 쿼리 실행 후 연결을 정리하고 쿼리 실행이 종료된 후에 다시 사용할 수 있습니다.

연결 풀링을 사용 설정하려면 데이터베이스 연결 풀링 실험실 기능을 사용 설정합니다. 실험실 기능이 사용 설정되어 있는 경우 데이터베이스에 연결 풀을 구성하고 위에 나열된 언어 중 하나를 사용하면 Looker에서 연결 풀링을 사용합니다.

연결 풀을 사용할 때 고려해야 할 사항은 다음과 같습니다.

  • 사용자 속성 값이 동일한 경우 여러 사용자가 연결 풀을 공유합니다. 사용자 속성 집합에 고유한 값 또는 다른 값이 있는 사용자는 데이터베이스에 연결할 때 고유한 연결 풀을 사용합니다.

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

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

  • 고유한 JDBC 연결 문자열은 고유한 연결 풀을 만듭니다. 예를 들어 고유한 데이터베이스 사용자 이름 또는 데이터베이스에 대한 역할 기반 액세스 제어를 지시하는 데이터베이스 그룹 이름은 고유한 JDBC 연결 문자열을 만들고 고유한 연결 풀을 만듭니다. 예를 들어 회사의 재무 그룹에는 데이터베이스의 모든 테이블에 대한 액세스 권한을 부여하는 데이터베이스 역할이 있지만, 영업팀 및 마케팅팀에 이 사용자에게 일부 데이터베이스 테이블에 대한 액세스 권한만 부여하는 데이터베이스 역할이 있을 수 있습니다. 이 경우 각 그룹에는 고유한 JDBC 연결 문자열과 고유한 연결 풀이 있습니다. 세 번째 그룹은 데이터베이스에 대한 액세스 권한을 자체적으로 보유한 Look-by-Looker (PBL) 고객 집단일 수 있습니다. 또한 PBL 고객에게는 고유한 JDBC 문자열과 고유한 연결 풀이 있으므로 재무 또는 영업 및 마케팅 그룹에서 사용하지 않는 고유한 연결 세트도 있습니다.

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

  • 여러 연결 풀이 생성되면 최대 연결 수가 여러 풀로 분할되며, 각 풀에는 사용 가능한 연결의 하위 집합이 포함됩니다. 이는 총 연결 수가 최대 연결 값을 초과할 수 없기 때문입니다.