Looker (Google Cloud Core) mit Ihrer Datenbank verbinden

Sobald Ihre Looker (Google Cloud Core)-Instanz bereitgestellt wurde, wird sie auf der Seite Instanzen Ihres Google Cloud-Projekts aufgeführt. Klicken Sie auf die Instanz-URL, um auf die Instanz zuzugreifen und sich bei der Instanz zu authentifizieren.

Nachdem Sie sich in Ihrer Looker (Google Cloud Core)-Instanz angemeldet haben, können Sie eine Datenbankverbindung zu Ihrer Instanz von Looker (Google Cloud Core) einrichten.

Datenbankverbindung einrichten

Looker (Google Cloud Core) muss für die Datenerkundung mit einer Datenbank verbunden sein. Die Liste der unterstützten Dialekte enthält Informationen dazu, welche Dialekte von Looker (Google Cloud Core) unterstützt werden.

Sie können eine Datenbankverbindung innerhalb einer Looker (Google Cloud Core)-Instanz erstellen, wenn Sie eine der folgenden Berechtigungen haben:

Sie können der Anleitung Looker einrichten folgen, die in der Looker (Google Cloud Core)-Instanz dynamisch angezeigt wird, um eine Verbindung zu Ihrer Datenbank herzustellen. Alternativ können Sie der Anleitung auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden und den dialect-spezifischen Dokumentationsseiten folgen.

Wenn Ihre Looker (Google Cloud Core)-Instanz eine private IP-Verbindung verwendet, müssen Sie eine Route oder eine private Verbindung einrichten, um sie mit einem der folgenden Datenbanktypen zu verbinden:

  • Eine Datenbank in einem anderen Netzwerk innerhalb von Google Cloud
  • Eine Datenbank, die von einem anderen Cloud-Dienstanbieter gehostet wird
  • Eine lokale Datenbank

Weitere Informationen zu privaten Netzwerken und externen Diensten finden Sie auf der Dokumentationsseite Private IP-Netzwerke mit Looker (Google Cloud Core).

Sobald eine Datenbankverbindung eingerichtet ist, können Sie ein LookML-Projekt einrichten.

Mit Standardanmeldedaten für Anwendungen eine Verbindung zu einer BigQuery-Datenbank herstellen

Looker (Google Cloud Core)-Instanzen können Standardanmeldedaten für Anwendungen zur Authentifizierung verwenden, wenn Sie eine Verbindung zu einer BigQuery-Standard-SQL-Datenbank einrichten. Wenn Sie ADC verwenden, wird die Verbindung mithilfe der Anmeldedaten des Dienstkontos des Looker (Google Cloud Core)-Projekts bei der Datenbank authentifiziert.

Um ADC mit einer BigQuery-Datenbank zu verwenden, wählen Sie auf der Seite Verbindungseinstellungen der Looker-Instanz im Feld Authentifizierung die Option Standardanmeldedaten für Anwendungen aus. Das vollständige Verfahren finden Sie in der Dokumentation zum Verbinden von Looker mit einer BigQuery-Datenbank.

Wenn Sie eine Verbindung zu einer BigQuery-Datenbank herstellen, die sich in einem anderen Projekt als Ihre Looker (Google Cloud Core)-Instanz befindet, sind zusätzliche Einrichtungsschritte erforderlich. Weitere Informationen finden Sie im Abschnitt Standardanmeldedaten für Anwendungen mit einer BigQuery-Datenbank in einem anderen Google Cloud-Projekt verwenden.

Identitätsübertragung für ein Dienstkonto

Wenn Sie sich mit einem anderen Dienstkonto als dem Dienstkonto des Looker (Google Cloud Core)-Projekts bei der BigQuery-Datenbank authentifizieren möchten, können Sie einen Ablauf mit delegierter Anfrage erstellen. Geben Sie dazu ein anderes Dienstkonto oder eine durch Kommas getrennte Kette von Dienstkonten in das Feld Impersonated Service Account ein. Das Dienstkonto von Looker (Google Cloud Core) wird automatisch als erstes Dienstkonto in der Kette verwendet und muss dem Feld nicht hinzugefügt werden. Das letzte Dienstkonto in der Kette (auch als Dienstkonto mit Identitätsübernahme bezeichnet) ist das Konto, das sich bei der Datenbank authentifiziert.

Wenn Sie die Identitätsübernahme für Dienstkonten verwenden, gehen Sie so vor:

Standardanmeldedaten für Anwendungen mit einer BigQuery-Datenbank in einem anderen Google Cloud-Projekt verwenden

Die Schritte zum Verwenden von ADC für eine BigQuery-Standard-SQL-Datenbank außerhalb des Projekts, in dem sich Ihre Looker (Google Cloud Core)-Instanz befindet, sind dieselben wie beim Einrichten einer Verbindung innerhalb desselben Projekts. Bevor Sie die Verbindung in Ihrer Looker (Google Cloud Core)-Instanz einrichten, muss das Dienstkonto Ihres Looker (Google Cloud Core)-Projekts jedoch die folgenden IAM-Rollen haben:

Wenn das Looker (Google Cloud Core)-Dienstkonto noch keine IAM-Rollen in dem Projekt hat, das das BigQuery-Dataset enthält, verwenden Sie die E-Mail-Adresse des Dienstkontos, um Rollen in diesem Projekt zu gewähren. Wenn Sie die E-Mail-Adresse des Dienstkontos finden möchten, rufen Sie in der Google Cloud Console die Seite IAM auf und klicken Sie das Kästchen Von Google bereitgestellte Rollenzuweisungen einbeziehen an. Die E-Mail hat das Format service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Verwenden Sie diese E-Mail-Adresse, um dem Dienstkonto die entsprechenden Rollen zuzuweisen.

Nachdem die entsprechenden Rollen gewährt wurden, folgen Sie der Anleitung zur Verwendung von ADC.

Sie können ADC jetzt mit dieser BigQuery-Standard-SQL-Datenbank verwenden. Das Projekt, das mit dem Dienstkonto verknüpft ist, das auf der Seite Verbindungseinstellungen angegeben ist, wird für die Abrechnung verwendet und dient auch als Standardprojekt.

Mit den Standardanmeldedaten für Anwendungen eine Verbindung zu einer Cloud SQL-Datenbank herstellen

Looker (Google Cloud Core)-Instanzen können ADC verwenden, um eine Verbindung zu einer Cloud SQL-Datenbank (entweder Cloud SQL for PostgreSQL oder Cloud SQL for MySQL) zu authentifizieren. Wenn Sie sich mit ADC bei Ihrer Cloud SQL-Datenbank authentifizieren, werden Looker-Abfragen dem Google Cloud-Projekt in Rechnung gestellt, in dem die Cloud SQL-Datenbank ausgeführt wird.

Bei Looker-Verbindungen zu Cloud SQL, die ADC verwenden, gibt ADC die Identität eines Dienstkontos oder einer Kette von Dienstkonten für den Zugriff auf Ihre Datenbank aus. Wenn Sie die Looker-Verbindung zu Ihrer Datenbank herstellen, geben Sie im Feld Nutzername(n) der IAM-Datenbank das Dienstkonto oder die Kette von Dienstkonten an, die von ADC übernommen werden. Das Looker-Dienstkonto, das beim Erstellen der Looker (Google Cloud Core)-Instanz automatisch erstellt wurde, wird automatisch als erstes Dienstkonto in der Kette verwendet und muss dem Feld nicht hinzugefügt werden.

Wenn Sie sich mit einem anderen Dienstkonto als dem Looker-Dienstkonto bei Ihrer Cloud SQL-Datenbank authentifizieren möchten, können Sie einen Ablauf mit delegierter Anfrage erstellen. Geben Sie dazu ein anderes Dienstkonto oder eine durch Kommas getrennte Kette von Dienstkonten in das Feld Nutzername(n) der IAM-Datenbank ein.

Das letzte Dienstkonto in der Kette (auch als Dienstkonto mit Identitätsübernahme bezeichnet) authentifiziert sich bei der Datenbank. Dieses Konto muss Ihrer Cloud SQL-Datenbank als Nutzer hinzugefügt werden. Wenn Sie das Looker-Dienstkonto als letztes Dienstkonto in der Kette verwenden und das Feld Nutzername(n) der IAM-Datenbank leer lassen, müssen Sie das Looker-Dienstkonto Ihrer Cloud SQL-Datenbank als Nutzer hinzufügen.

Im Folgenden werden die allgemeinen Schritte beschrieben, um eine Cloud SQL for PostgreSQL- oder Cloud SQL for MySQL-Datenbank über ADC mit Looker zu verbinden:

  1. Fügen Sie Ihrer Cloud SQL-Datenbank das Dienstkonto mit Identitätsübernahme hinzu.
  2. Identitätswechsel für Dienstkonten für Ihre Cloud SQL-Datenbank einrichten
  3. Stellen Sie eine Verbindung zu Ihrer Datenbank her, um zusätzliche Konfigurationsbefehle für Cloud SQL for PostgreSQL oder Cloud SQL for MySQL auszuführen.
  4. Erstellen Sie die Looker-Verbindung zu Ihrer Datenbank.

Dienstkonto mit Identitätsübernahme der Cloud SQL-Datenbank hinzufügen

Wenn Sie die Looker-Verbindung zu Ihrer Datenbank herstellen, geben Sie im Feld Nutzername(n) der IAM-Datenbank das Dienstkonto oder die Kette von Dienstkonten an, die ADC übernimmt, um Aktionen für Ihre Datenbank auszuführen. Das letzte Dienstkonto in der Kette der Identitätsübernahme wird als Dienstkonto mit Identitätsübernahme betrachtet.

Damit Sie ADC mit Cloud SQL verwenden können, müssen Sie Ihrer Cloud SQL-Datenbank das Dienstkonto mit Identitätsübernahme hinzufügen:

  • Wenn Sie das Feld Nutzername(n) der IAM-Datenbank leer lassen, übernimmt ADC im Standardfall die Identität des Looker-Dienstkontos. In diesem Fall ist das Looker-Dienstkonto das Dienstkonto mit Identitätsübernahme. Daher müssen Sie das Looker-Dienstkonto Ihrer Cloud SQL-Datenbank hinzufügen. Informationen zum Looker-Dienstkonto und zur Vorgehensweise zum Aufrufen der E-Mail-Adresse des Looker-Dienstkontos finden Sie auf der Dokumentationsseite Looker (Google Cloud Core)-Instanz erstellen.
  • Wenn Sie ein anderes Dienstkonto als das Looker-Dienstkonto oder eine Kette von Dienstkonten im Feld Nutzername(n) der IAM-Datenbank angeben, müssen Sie Ihrer Cloud SQL-Datenbank das letzte Dienstkonto in der Kette der Identitätsübernahme hinzufügen.

Sie benötigen die IAM-Rolle Cloud SQL Admin, um Ihrer Cloud SQL-Datenbank ein Dienstkonto hinzuzufügen.

Folgen Sie der Anleitung "IAM-Nutzer oder -Dienstkonto zu Ihrer Datenbankinstanz hinzufügen" für Ihren Datenbankdialekt, um Ihrer Cloud SQL-Datenbank das Dienstkonto mit Identitätsübernahme hinzuzufügen:

Identitätswechsel für Dienstkonten für Ihre Cloud SQL-Datenbank einrichten

Nachdem Sie den Cloud SQL-Nutzer in Ihrer Datenbank erstellt haben, müssen Sie Ihre Cloud SQL-Datenbank für die Identitätsübernahme von Diensten einrichten. Gehen Sie dazu so vor:

  1. Folgen Sie der Anleitung zum Aktivieren der Cloud SQL Admin API.
  2. Achten Sie darauf, dass alle Dienstkonten in der Kette, einschließlich des Looker-Dienstkontos, die entsprechenden IAM-Berechtigungen haben.
  3. Folgen Sie der Anleitung zum Zuweisen einer einzelnen Rolle in der Google Cloud Console. Gewähren Sie dem Dienstkonto mit Identitätsübernahme, das Sie Ihrer Cloud SQL-Datenbank hinzugefügt haben, die folgenden Cloud SQL-Rollen:

    Wenn Sie ein anderes Dienstkonto als das Looker-Dienstkonto oder eine Kette von Dienstkonten im Feld Nutzername(n) der IAM-Datenbank angeben, gewähren Sie jedem Dienstkonto in der Kette die folgende Berechtigung:

Zusätzliche Konfigurationsbefehle für Cloud SQL for MySQL

Für Cloud SQL for MySQL müssen Sie eine Verbindung zu Ihrer Datenbankinstanz herstellen und den folgenden Befehl in der Cloud SQL for MySQL-Datenbank ausführen:

GRANT ALL on DATABASE_NAME.* to 'DATABASE_USER'@'%'

Ersetzen Sie Folgendes:

  • DATABASE_NAME: Der Name Ihrer Datenbank.
  • DATABASE_USER: Der gekürzte Nutzername des Dienstkontos für das Dienstkonto mit Identitätsübernahme, das Sie Ihrer Cloud SQL-Datenbank hinzugefügt haben. Das Dienstkonto hat das Format service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Kürzen Sie den Nutzernamen, indem Sie @ und alle folgenden Elemente entfernen. Nach dem Abschneiden sieht der Nutzername so aus: service-<project number>.

Wenn der Nutzername des Dienstkontos beispielsweise service-12345678901@gcp-sa-looker.iam.gserviceaccount.com und der Datenbankname looker-test lautet, lautet der Befehl so:

GRANT ALL on looker-test.* to 'service-12345678901'@'%'

Zusätzliche Konfigurationsbefehle für Cloud SQL for PostgreSQL

Für Cloud SQL for PostgreSQL müssen Sie eine Verbindung zu Ihrer Datenbankinstanz herstellen und einige Konfigurationsbefehle in der Cloud SQL for PostgreSQL-Datenbank ausführen:

  • Gewähren Sie dem Nutzer Berechtigungen für Ihre Datenbank, wie im Abschnitt Nutzer und Sicherheit der PostgreSQL-Dokumentationsseite beschrieben.
  • Legen Sie den Suchpfad für den Looker SQL-Runner zum Abrufen von Metadaten aus Ihrer Datenbank fest, wie im Abschnitt search_path festlegen der PostgreSQL-Seite der Looker-Dokumentation beschrieben.

Verbindung zu Looker (Google Cloud Core) erstellen

So stellen Sie die Verbindung von Looker zu Ihrer Datenbank her:

  1. Wählen Sie in Looker im Bereich Admin die Option Verbindungen aus und klicken Sie dann auf Verbindung hinzufügen.
  2. Wählen Sie im Drop-down-Menü Dialekt die Option Google Cloud PostgreSQL oder für Cloud SQL for MySQL Google Cloud SQL aus.
  3. Klicken Sie im Abschnitt Authentifizierung auf die Option Standardanmeldedaten für Anwendungen.
  4. Geben Sie im Feld Nutzername(n) der IAM-Datenbank das Dienstkonto oder die Kette von Dienstkonten an, deren Identität von ADC zur Ausführung von Aktionen für Ihre Datenbank übernommen werden soll:

    • Wenn Sie möchten, dass sich Looker über das Dienstkonto des Looker (Google Cloud Core)-Projekts bei der Cloud SQL-Datenbank authentifiziert, lassen Sie dieses Feld leer.
    • Wenn Sie möchten, dass sich Looker bei der Cloud SQL-Datenbank mit einem anderen Dienstkonto als dem Dienstkonto des Looker (Google Cloud Core)-Projekts authentifiziert, können Sie einen Ablauf mit delegierter Anfrage erstellen. Geben Sie dazu ein anderes Dienstkonto oder eine durch Kommas getrennte Kette von Dienstkonten ein.
  5. Füllen Sie die restlichen Verbindungsdetails aus. Die meisten Einstellungen sind den meisten Datenbankdialekten gemeinsam. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.

  6. Klicken Sie auf Testen, um zu prüfen, ob die Verbindung erfolgreich hergestellt wurde. Informationen zur Fehlerbehebung finden Sie auf der Dokumentationsseite Datenbankverbindung testen.

  7. Klicken Sie auf Verbinden, um diese Einstellungen zu speichern.

Unterstützte Dialekte für Looker (Google Cloud Core)

Die folgende Tabelle zeigt die Unterstützung von Datenbankdialekten durch Looker (Google Cloud Core):

Dialekt Unterstützt?
Actian Lawine
Nein
Amazon Athena
Yes
Amazon Aurora MySQL
Yes
Amazon Redshift
Yes
Druid
Nein
Apache Druid 0.13+
Nein
Apache Druid 0.18+
Yes
Apache Hive 2.3 und höher
Nein
Apache Hive 3.1.2 und höher
Yes
Apache Spark 3 und höher
Yes
ClickHouse
Yes
Cloudera Impala 3.1 und höher
Yes
Cloudera Impala 3.1+ mit nativem Treiber
Nein
Cloudera Impala mit nativem Treiber
Nein
DataVirtuality
Nein
Databricks
Yes
Denodo 7
Nein
Denodo 8
Yes
Dremio
Nein
Dremio 11+
Yes
Exasol
Nein
Firebolt
Nein
Google BigQuery Legacy-SQL
Nein
Google BigQuery-Standard-SQL
Yes
Google Cloud PostgreSQL
Yes
Google Cloud SQL
Yes
Google Spanner
Yes
Greenplum
Nein
HyperSQL
Nein
IBM Netezza
Yes
MariaDB
Yes
Microsoft Azure PostgreSQL
Yes
Microsoft Azure SQL-Datenbank
Yes
Microsoft Azure Synapse-Analyse
Yes
Microsoft SQL Server 2008 oder höher
Nein
Microsoft SQL Server 2012 und höher
Nein
Microsoft SQL Server 2016
Nein
Microsoft SQL Server 2017 und höher
Yes
MongoBI
Nein
MySQL
Nein
MySQL 8.0.12 und höher
Yes
Oracle
Yes
Oracle ADWC
Nein
PostgreSQL 9.5+
Yes
PostgreSQL vor 9.5
Nein
PrestoDB
Yes
PrestoSQL
Yes
SAP HANA 2 und höher
Yes
SingleStore
Nein
SingleStore 7 und höher
Yes
Snowflake
Yes
Teradata
Nein
Trino
Yes
Vektor
Nein
Vertica
Yes

Anweisungen zur Datenbankkonfiguration

Anleitungen sind für die folgenden SQL-Dialekte verfügbar:

Nächste Schritte