Verbindungs-Pooling ermöglicht die Verwendung vorkonfigurierter Verbindungspools auf den Dialekten von Amazon Redshift, PostgreSQL und Snowflake.
Mit dieser Option kann Looker Pools von Verbindungen über den JDBC-Treiber nutzen. Der Verbindungspool der Datenbank ermöglicht eine schnellere Abfrageleistung. Bei einer neuen Abfrage muss keine neue Datenbankverbindung hergestellt werden. Stattdessen kann eine vorhandene Verbindung aus dem Verbindungspool verwendet werden. Das Verbindungs-Pooling sorgt dafür, dass eine Verbindung nach einer Abfrage ausgeführt wird und nach Ende der Abfrage wieder verwendet werden kann.
Aktivieren Sie das Labs-Feature Datenbankverbindungs-Pooling, um das Verbindungs-Pooling zu aktivieren. Wenn das Labs-Feature aktiviert ist und Sie Verbindungspools für Ihre Datenbank konfiguriert haben und einen der oben aufgeführten Dialekte verwenden, wird in Looker das Verbindungs-Pooling verwendet.
Beachten Sie Folgendes, wenn Sie Verbindungspools verwenden:
Mehrere Nutzer teilen sich einen Verbindungspool, wenn ihre Nutzerattributwerte identisch sind. Nutzer, die in ihren Nutzerattributen eindeutige oder unterschiedliche Werte haben, verwenden beim Herstellen einer Verbindung zur Datenbank eindeutige Verbindungspools.
Die maximale Anzahl von Verbindungen zu allen Verbindungspools auf allen Datenbankknoten ist durch den Wert im Feld Max. Verbindungen pro Knoten auf der Seite Verbindung der Datenbank begrenzt.
Wenn die Anzahl der gleichzeitigen Abfragen an einen Verbindungspool die maximale Anzahl von Verbindungen überschreitet, werden Abfragen in Looker in die Warteschlange gestellt, bis vorherige Abfragen ausgeführt werden.
Mit eindeutigen JDBC-Verbindungsstrings werden eindeutige Verbindungspools erstellt. Durch eindeutige Datenbank-Nutzernamen oder Datenbankgruppennamen, die die rollenbasierte Zugriffssteuerung für die Datenbank vorgeben, werden eindeutige JDBC-Verbindungsstrings erstellt. Anschließend werden eindeutige Verbindungspools erstellt. So kann z. B. eine Finanzgruppe in einem Unternehmen eine Datenbankrolle haben, die ihnen Zugriff auf alle Tabellen in der Datenbank gewährt, während das Vertriebs- und Marketingteam möglicherweise eine Datenbankrolle hat, die ihm nur Zugriff auf einen Teil der Datenbanktabellen gewährt. In diesem Fall hat jede Gruppe einen eindeutigen JDBC-Verbindungsstring und einen eindeutigen Verbindungspool. Eine dritte Gruppe ist beispielsweise eine Gruppe von eingebetteten Analysen, die eigene Zugriffsrechte für die Datenbank haben. Die eingebetteten Analytics-Kunden haben außerdem einen eindeutigen JDBC-String und einen eindeutigen Verbindungspool. Sie haben daher auch eindeutige Verbindungen, die von den Finanz- oder Vertriebs- und Marketinggruppen nicht verwendet werden.
Die
WHERE
-Klausel in einer SQL-Abfrage verursacht keine neuen Verbindungspools. DieWHERE
-Klausel hat keine Auswirkungen auf den JDBC-Verbindungsstring. Es wird also kein neuer Verbindungspool erstellt. Einzigartige Zugriffsfilter ändern die SQL-WHERE
-Klausel in einer Abfrage, nicht den JDBC-Verbindungsstring. Dadurch werden keine neuen Verbindungspools erstellt.Wenn mehrere Verbindungspools erstellt werden, wird die maximale Anzahl der Verbindungen in mehrere Pools fragmentiert, wobei jeder Pool eine Teilmenge der verfügbaren Verbindungen enthält. Dies ist der Fall, weil die Gesamtzahl der Verbindungen den Wert für die maximale Verbindung nicht überschreiten darf.