データベース接続プール

接続プーリングを使用すると、PostgreSQLSnowflake のデータベース言語で事前構成された接続プールを使用できます。

お使いの言語が接続プーリングに対応している場合、データベース接続プールにより、Looker は JDBC ドライバを介した接続のプールを使用できます。データベース接続プールにより、クエリのパフォーマンスが向上します。新しいクエリでデータベース接続を新しく作成する必要はありません。接続プールにある既存の接続を使用できます。接続プール機能により、クエリの実行後に接続がクリーンアップされ、クエリの実行の終了後に接続が再利用できるようになります。

Looker でデータベース接続を作成または編集する際に、データベース接続プーリング オプションを使用して接続プーリングを有効にできます。

次のすべてに該当する場合、Looker は接続で接続プーリングを使用します。

接続プールを使用する際の考慮事項は次のとおりです。

  • ユーザー属性値が同じ場合、複数のユーザーが接続プールを共有します。一連のユーザー属性に一意の値または異なる値があるユーザーは、データベースへの接続時に一意の接続プールを使用します。

  • すべてのデータベース ノードにまたがる接続プールに対して作成できる接続の最大数は、データベースの [接続] ページの [ノードあたりの最大接続数] で値が制限されています。

  • 接続プールに対して発行される同時クエリの数が接続の最大数を超えると、前述のクエリが実行されるまで、クエリが Looker でキューに入れられます。

  • 一意の JDBC 接続文字列を使用すると、一意の接続プールが作成されます。たとえば、データベースへのロールベースのアクセス制御を指定する一意のデータベース ユーザー名またはデータベース グループ名によって、一意の JDBC 接続文字列が作成され、一意の接続プールが作成されます。たとえば、会社の財務グループには、データベース内のすべてのテーブルへのアクセス権を付与するデータベース ロールが割り当てられている場合がありますが、営業およびマーケティング チームには、データベース テーブルのサブセットへのアクセス権のみが付与されているデータベース ロールが割り当てられている場合があります。この場合、各グループには一意の JDBC 接続文字列と一意の接続プールがあります。3 つ目のグループは、データベースへの独自のアクセス権を持つ埋め込み分析のお客様です。埋め込みアナリティクスをご利用のお客様には、一意の JDBC 文字列と一意の接続プールも用意されるため、財務グループや営業 / マーケティング グループでは使用されていない一意の接続セットも用意されます。

  • SQL クエリの WHERE 句は、新しい接続プールを生成しません。WHERE 句は JDBC 接続文字列に影響しないため、新しい接続プールは作成されません。たとえば、一意のアクセス フィルタは、JDBC 接続文字列ではなくクエリ内の SQL WHERE 句を変更するため、一意のアクセス フィルタは新しい接続プールを作成しません。

  • 複数の接続プールが作成されると、最大接続数は複数のプールに分割され、各プールには使用可能な接続のサブセットが含まれます。これは、接続の合計数が最大接続数の値を超えることができないためです。

データベース接続プールに対する言語サポート

データベース接続プーリングを使用できるかどうかは、Looker 接続で使用されているデータベース言語によって異なります。Looker の最新リリースでは、次の言語でデータベース接続プールがサポートされています。

方言 サポート対象
Actian Avalanche
×
Amazon Athena
×
Amazon Aurora MySQL
×
Amazon Redshift
×
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 Standard SQL
いいえ
Google Cloud PostgreSQL
Google Cloud SQL
×
Google Spanner
×
Greenplum
HyperSQL
×
IBM Netezza
×
MariaDB
×
Microsoft Azure PostgreSQL
Microsoft Azure SQL Database
×
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 9.5 より前
PrestoDB
×
Presto SQL
×
SAP HANA 2+
×
SingleStore
×
SingleStore 7+
×
Snowflake
Teradata
×
Trino
×
Vector
×
Vertica
×