Looker (Google Cloud Core) mit Ihrer Datenbank verbinden

Sobald Ihre Looker-Instanz (Google Cloud Core) 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 dort zu authentifizieren.

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

Datenbankverbindung einrichten

Looker (Google Cloud Core) muss mit einer Datenbank verbunden sein, damit Daten analysiert werden können. Liste der unterstützten Dialekte

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

Sie können die Anleitung Looker einrichten befolgen, die dynamisch in der Looker (Google Cloud Core)-Instanz angezeigt wird, um Ihre Datenbank zu verbinden. Alternativ können Sie die Schritte auf den dialektspezifischen Dokumentationsseiten ausführen. Der Großteil der Einstellungen gilt für die meisten Datenbankdialekte. Informationen zu gängigen Feldern im Fenster für die Einrichtung der Looker-Verbindung finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.

Wenn Sie Ihre Looker (Google Cloud Core)-Verbindung mit einer der folgenden Optionen einrichten möchten, sind zusätzliche Schritte erforderlich:

Standardanmeldedaten für Anwendungen zum Herstellen einer Verbindung zu einer BigQuery-Datenbank verwenden

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

Wenn Sie ADC mit einer BigQuery-Datenbank verwenden möchten, wählen Sie auf der Seite Verbindungseinstellungen der Looker-Instanz im Feld Authentifizierung die Option Standardanmeldedaten für Anwendungen aus. Die vollständige Anleitung finden Sie in der Dokumentation zum Verbinden von Looker mit einer BigQuery-Datenbank.

Wenn in Ihrer Looker (Google Cloud Core)-Instanz persistente abgeleitete Tabellen mit einem BigQuery-Dataset verwendet werden, müssen Sie dem Looker-Dienstkonto auch die IAM-Rolle „Identity and Access Management Data Editor“ zuweisen.

Wenn Sie eine Verbindung zu einer BigQuery-Datenbank herstellen, die sich in einem anderen Projekt als Ihrer Looker (Google Cloud Core)-Instanz befindet, ist eine zusätzliche Einrichtung 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 delegierten Anforderungsablauf erstellen, indem Sie ein anderes Dienstkonto oder eine durch Kommas getrennte Kette von Dienstkonten in das Feld Impersonated Service Account (Übernommenes Dienstkonto) eingeben. Das Looker (Google Cloud Core)-Dienstkonto wird automatisch als erstes Dienstkonto in der Kette verwendet und muss nicht dem Feld hinzugefügt werden. Das letzte Dienstkonto in der Kette (auch als übernommenes Dienstkonto bezeichnet) ist das Konto, das sich bei der Datenbank authentifiziert.

Wenn Sie die Identitätsübernahme des Dienstkontos 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, die sich außerhalb des Projekts befindet, 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 können, 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, wenn Sie Rollen in diesem Projekt gewähren. Die E-Mail-Adresse des Dienstkontos finden Sie auf der Seite IAM in der Google Cloud Console. Klicken Sie dazu das Kästchen Von Google bereitgestellte Rollenzuweisungen einschließen 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 richtigen Rollen zuzuweisen.

Nachdem die entsprechenden Rollen zugewiesen wurden, folgen Sie der Anleitung zum Verwenden von ADC.

Sie können jetzt ADC 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.

Standardanmeldedaten für Anwendungen zum Herstellen einer Verbindung zu einer Cloud SQL-Datenbank verwenden

Für Looker-Instanzen (Google Cloud Core) kann ADC verwendet werden, um eine Verbindung zu einer Cloud SQL-Datenbank (entweder Cloud SQL for PostgreSQL oder Cloud SQL for MySQL) zu authentifizieren. Wenn Sie ADC verwenden, um sich bei Ihrer Cloud SQL-Datenbank zu authentifizieren, wird das Projekt, in dem die Cloud SQL-Datenbank ausgeführt wird, für Looker-Abfragen abgerechnet. Google Cloud

Bei Looker-Verbindungen zu Cloud SQL, die ADC verwenden, übernimmt ADC die Identität eines Dienstkontos oder einer Kette von Dienstkonten, um auf Ihre Datenbank zuzugreifen. Wenn Sie die Looker-Verbindung zu Ihrer Datenbank erstellen, geben Sie im Feld IAM-Datenbanknutzername(n) das Dienstkonto oder die Kette von Dienstkonten an, die ADC übernehmen soll. Das Looker-Dienstkonto, das automatisch beim Erstellen der Looker (Google Cloud Core)-Instanz 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 delegierten Anfragestrom erstellen, indem Sie ein anderes Dienstkonto oder eine durch Kommas getrennte Kette von Dienstkonten in das Feld IAM-Datenbanknutzername(n) eingeben.

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

Im Folgenden finden Sie die allgemeinen Schritte zum Herstellen einer Verbindung zwischen einer Cloud SQL for PostgreSQL- oder Cloud SQL for MySQL-Datenbank und Looker mithilfe von ADC:

  1. Fügen Sie das Dienstkonto, das die Identität des Nutzers annimmt, Ihrer Cloud SQL-Datenbank hinzu.
  2. Identitätswechsel des Dienstkontos in Ihrer 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. Looker-Verbindung zu Ihrer Datenbank erstellen

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

Wenn Sie die Looker-Verbindung zu Ihrer Datenbank erstellen, geben Sie im Feld IAM-Datenbanknutzername(n) das Dienstkonto oder die Kette von Dienstkonten an, die ADC identifizieren, um Aktionen in Ihrer Datenbank auszuführen. Das letzte Dienstkonto in der Identitätsübernahmekette gilt als Identität des Dienstkontos.

Wenn Sie ADC mit Cloud SQL verwenden möchten, müssen Sie das Dienstkonto mit der übernommenen Identität Ihrer Cloud SQL-Datenbank hinzufügen:

  • Wenn Sie das Feld IAM-Datenbanknutzername(n) leer lassen, übernimmt ADC standardmäßig die Identität des Looker-Dienstkontos. In diesem Fall ist das Looker-Dienstkonto das Dienstkonto, dessen Identität übernommen wird. Sie müssen das Looker-Dienstkonto also 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 IAM-Datenbanknutzername(n) angeben, müssen Sie das letzte Dienstkonto in der Identitätswechselkette Ihrer Cloud SQL-Datenbank hinzufügen.

Wenn Sie Ihrer Cloud SQL-Datenbank ein Dienstkonto hinzufügen möchten, benötigen Sie die IAM-Rolle Cloud SQL-Administrator.

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

Identitätswechsel des Dienstkontos 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 Dienstidentitätsübernahme einrichten. Führen Sie dazu die folgenden Schritte aus:

  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 -Konsole. Gewähren Sie dem imitierten Dienstkonto, 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 IAM database username(s) (IAM-Datenbanknutzername(n)) angeben, gewähren Sie jedem Dienstkonto in der Kette die folgende Berechtigung:

Zusätzliche Konfigurationsbefehle für Cloud SQL for MySQL

Bei Cloud SQL for MySQL müssen Sie eine Verbindung zu Ihrer Datenbankinstanz herstellen und den folgenden Befehl für die 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 Dienstkontonutzername für das imitierte Dienstkonto, 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 alles, was danach folgt, entfernen. Nach dem Kürzen würde der Nutzername so aussehen: service-<project number>.

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

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

Zusätzliche Konfigurationsbefehle für Cloud SQL for PostgreSQL

Bei Cloud SQL for PostgreSQL müssen Sie eine Verbindung zu Ihrer Datenbankinstanz herstellen und einige Konfigurationsbefehle für die Cloud SQL for PostgreSQL-Datenbank ausführen:

  • Gewähren Sie dem Nutzer Berechtigungen für Ihre Datenbank, wie im Abschnitt Users and security (Nutzer und Sicherheit) auf der Dokumentationsseite zu PostgreSQL beschrieben.
  • Legen Sie den Suchpfad fest, den der SQL Runner von Looker zum Abrufen von Metadaten aus Ihrer Datenbank verwenden soll. Eine Anleitung dazu finden Sie im Abschnitt search_path festlegen auf der PostgreSQL-Seite in der Looker-Dokumentation.

Verbindung von Looker (Google Cloud Core) zu Ihrer Cloud SQL-Datenbank herstellen

So erstellen Sie die Verbindung von Looker zu Ihrer Datenbank:

  1. Wählen Sie in Looker im Bereich Admin die Option Connections (Verbindungen) aus und klicken Sie dann auf Add Connection (Verbindung hinzufügen).
  2. Wählen Sie im Drop-down-Menü Dialekt die Option Google Cloud PostgreSQL oder für Cloud SQL for MySQL die Option Google Cloud SQL aus.
  3. Klicken Sie im Abschnitt Authentifizierung auf die Option Standardanmeldedaten für Anwendungen.
  4. Geben Sie im Feld IAM-Datenbanknutzername(n) das Dienstkonto oder die Kette von Dienstkonten an, die ADC identifizieren soll, um Aktionen in Ihrer Datenbank auszuführen:

    • Wenn Looker die Authentifizierung bei der Cloud SQL-Datenbank mit dem Dienstkonto des Looker (Google Cloud Core)-Projekts durchführen soll, lassen Sie dieses Feld leer.
    • Wenn Looker die Authentifizierung bei der Cloud SQL-Datenbank mit einem anderen Dienstkonto als dem Dienstkonto des Looker (Google Cloud Core)-Projekts vornehmen soll, können Sie einen delegierten Anforderungsablauf erstellen, indem Sie ein anderes Dienstkonto oder eine durch Kommas getrennte Kette von Dienstkonten eingeben.
  5. Geben Sie die restlichen Verbindungsdetails ein. Der Großteil der Einstellungen gilt für die meisten Datenbankdialekte. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden.

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

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

Nachdem eine Datenbankverbindung eingerichtet wurde, können Sie ein LookML-Projekt einrichten.

OAuth-Authentifizierung mit BigQuery konfigurieren

So konfigurieren Sie die OAuth-Authentifizierung für Verbindungen zu einer BigQuery-Datenbank in einer Looker (Google Cloud Core)-Instanz:

  1. Wählen Sie unter Authentifizierung die Option OAuth aus. In Looker (Google Cloud Core) werden standardmäßig die Anmeldedaten für OAuth-Anwendungen verwendet, die Ihr Looker-Administrator beim Erstellen der Looker (Google Cloud Core)-Instanz verwendet hat. Sie müssen keine Client-ID und kein Secret manuell erstellen oder eingeben.
  2. Fügen Sie dem Feld Autorisierte Weiterleitungs-URIs im OAuth-Client der Instanz einen zusätzlichen Weiterleitungs-URI hinzu oder erstellen Sie einen neuen OAuth-Client mit den Anmeldedaten und fügen Sie einen Weiterleitungs-URI hinzu. Für die Weiterleitungs-URI muss die URL der Looker-Instanz gefolgt von /external_oauth/redirect verwendet werden. Hintergrundinformationen finden Sie in der Dokumentation zum Generieren von OAuth-Anmeldedaten für BigQuery.

Wenn Sie für diese Verbindung andere OAuth-Anmeldedaten manuell eingeben möchten, aktivieren Sie die Ein/Aus-Schaltfläche OAuth-Anmeldedaten manuell konfigurieren und füllen Sie dann die Felder OAuth-Client-ID und OAuth-Client-Secret aus. Wenn Sie OAuth-Anmeldedaten manuell eingeben, werden die Anmeldedaten, die beim Erstellen der Looker (Google Cloud Core)-Instanz verwendet wurden, dadurch nicht geändert oder aktualisiert. Folgen Sie der Anleitung unter BigQuery-Datenbankprojekt für OAuth konfigurieren, um verschiedene Anmeldedaten zu erstellen und zu verwenden.

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

In der folgenden Tabelle sehen Sie die Unterstützung von Datenbankdialekten in Looker (Google Cloud Core):

Dialekt Unterstützt?
Actian Avalanche
Nein
Amazon Athena
Ja
Amazon Aurora MySQL
Ja
Amazon Redshift
Ja
Amazon Redshift 2.1+
Ja
Amazon Redshift Serverless 2.1+
Ja
Apache Druid
Nein
Apache Druid 0.13+
Nein
Apache Druid 0.18+
Ja
Apache Hive 2.3+
Nein
Apache Hive 3.1.2+
Ja
Apache Spark 3+
Ja
ClickHouse
Ja
Cloudera Impala 3.1+
Ja
Cloudera Impala 3.1+ with Native Driver
Nein
Cloudera Impala with Native Driver
Nein
DataVirtuality
Nein
Databricks
Ja
Denodo 7
Nein
Denodo 8 & 9
Ja
Dremio
Nein
Dremio 11+
Ja
Exasol
Nein
Google BigQuery Legacy SQL
Ja
Google BigQuery Standard SQL
Ja
Google Cloud PostgreSQL
Ja
Google Cloud SQL
Ja
Google Spanner
Ja
Greenplum
Nein
HyperSQL
Nein
IBM Netezza
Ja
MariaDB
Ja
Microsoft Azure PostgreSQL
Ja
Microsoft Azure SQL Database
Ja
Microsoft Azure Synapse Analytics
Ja
Microsoft SQL Server 2008+
Nein
Microsoft SQL Server 2012+
Nein
Microsoft SQL Server 2016
Nein
Microsoft SQL Server 2017+
Ja
MongoBI
Nein
MySQL
Nein
MySQL 8.0.12+
Ja
Oracle
Ja
Oracle ADWC
Nein
PostgreSQL 9.5+
Ja
PostgreSQL pre-9.5
Nein
PrestoDB
Ja
PrestoSQL
Ja
SAP HANA
Nein
SAP HANA 2+
Ja
SingleStore
Nein
SingleStore 7+
Ja
Snowflake
Ja
Teradata
Ja
Trino
Ja
Vector
Nein
Vertica
Ja

Anweisungen zur Datenbankkonfiguration

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

Nächste Schritte