ClickHouse

Verbinden Sie Looker mit Ihrer ClickHouse-Datenbank, um Ihre Daten zu analysieren und interaktive Dashboards zu erstellen. Diese Verbindung macht Ihre ClickHouse-Daten für Berichte und Analysen in Looker verfügbar und unterstützt so direkte datengestützte Entscheidungen.

Auf dieser Seite wird beschrieben, wie Sie Ihre ClickHouse-Instanz und die Looker-Verbindungseinstellungen konfigurieren, einschließlich der Verschlüsselung von Netzwerkverkehr, der Definition von Nutzerberechtigungen und der Überprüfung der unterstützten Funktionen. Looker unterstützt ClickHouse-Version 0.2 oder höher und ClickHouse 26+ mit modernisierten JDBC-Treibern und Unterstützung für symmetrische Aggregate.

Netzwerk-Datenverkehr verschlüsseln

Es empfiehlt sich, den Netzwerkverkehr zwischen Looker-Anwendung und Datenbank zu verschlüsseln. Prüfen Sie eine der Optionen, die auf der Dokumentationsseite Sicheren Datenbankzugriff ermöglichen beschrieben werden.

Informationen zum Aktivieren der SSL-Verschlüsselung auf der Serverseite finden Sie in der Dokumentation zu globalen Servereinstellungen für ClickHouse.

Benutzer und Sicherheit

Konfigurieren Sie zuerst Ihren Looker-Nutzer auf dem ClickHouse-Server. ClickHouse-Datenbanknutzer können mit SQL (CREATE USER) oder über den Abschnitt users in der Datei users.xml konfiguriert werden. Folgen Sie der Dokumentation zu ClickHouse-Zugriffsrechten, um den Nutzerzugriff zu konfigurieren. Im folgenden einfachen Beispiel wird users.xml verwendet:

<!-- Users and ACL. -->
<users>
    <looker>
        <password>CHANGEIT</password>
        <networks incl="networks" />
        <profile>default</profile>
        <quota>default</quota>
    </looker>

    <web>
        <password></password>
        <networks incl="networks" />
        <profile>web</profile>
        <quota>default</quota>
        <allow_databases>
           <database>test</database>
        </allow_databases>
        <allow_dictionaries>
           <dictionary>test</dictionary>
        </allow_dictionaries>
    </web>
</users>

Konfigurieren Sie in dieser Datei auch den entsprechenden Datenbankzugriff:

<allow_databases>
    <database>database_1</database>
    <database>database_2</database>
    <database>database_3</database>
</allow_databases>

Looker-Verbindung zu Ihrer Datenbank erstellen

Wählen Sie in Looker im Bereich Admin die Option Verbindungen aus und klicken Sie dann auf Verbindung hinzufügen.

Geben Sie die Verbindungsdetails ein. Der Großteil der Einstellungen ist für die meisten Datenbankdialekte gleich. Weitere Informationen finden Sie auf der Dokumentationsseite Looker mit Ihrer Datenbank verbinden. Einige der Einstellungen werden im Folgenden beschrieben:

  • Dialekt: Wählen Sie ClickHouse 26+ oder ClickHouse aus.
  • Host: Erreichbarer Hostname oder die IP-Adresse des ClickHouse-Servers.
  • Port: Port, über den der ClickHouse-Dienst über HTTP(S) erreichbar ist.
    • Standardmäßig wird für HTTP-Verbindungen 8123 und für HTTPS-Verbindungen 8443 verwendet.
    • Die Ports 9000 und 9440 werden standardmäßig vom nativen TCP-Befehlszeilenclient von ClickHouse verwendet. Looker muss jedoch HTTP(S)-Ports verwenden, um eine Verbindung zu ClickHouse herzustellen.
    • Ihr ClickHouse-Administrator hat möglicherweise alternative Ports mit den Einstellungen http_port oder https_port in der ClickHouse-Konfiguration ausgewählt. Fragen Sie Ihren ClickHouse-Administrator nach den Einstellungen, die für Ihre Konfiguration geeignet sind.
  • Datenbank: Datenbankname (muss eine der Datenbanken sein, die in Ihren ClickHouse-Berechtigungen zulässig sind).
  • Nutzername: Datenbanknutzername.
  • Passwort: Datenbankpasswort.
  • SSL: Aktivieren Sie diese Option, um eine Verbindung zu ClickHouse über SSL/TLS herzustellen.
  • SSL überprüfen: (Optional) Aktivieren Sie diese Option, um eine strenge SSL-Zertifikats- und Hostnamenüberprüfung auf dem ClickHouse-Server zu erzwingen. Wählen Sie SSL-Zertifikat überprüfen nur aus, wenn Sie ein SSL-Zertifikat verwenden, das von einer allgemein vertrauenswürdigen Zertifizierungsstelle signiert wurde. Wenn Sie ein selbst signiertes SSL-Zertifikat verwenden, lassen Sie diese Einstellung deaktiviert.
  • Zusätzliche JDBC-Parameter: (Optional) Zusätzliche JDBC-Stringparameter. Eine Liste der von Looker unterstützten Parameter finden Sie auf dieser Seite im Abschnitt Unterstützte JDBC-Parameter.

Klicken Sie unten auf der Seite Verbindungseinstellungen im Bereich Statusdetails auf den Button Verbindung testen, um zu prüfen, ob die Verbindung erfolgreich hergestellt wurde.

Wenn in Looker Can Connect (Kann verbunden werden) angezeigt wird, klicken Sie auf Connect (Verbinden), um die Verbindung zu erstellen.

Ihre Datenbankverbindung wird dann der Liste auf der Seite Verbindungen Administrator in Looker hinzugefügt.

Unterstützte JDBC-Parameter

Für ClickHouse unterstützt Looker die folgenden JDBC-Parameter im Feld Zusätzliche JDBC-Parameter für die Verbindung. Informationen zu diesen Parametern finden Sie in der Dokumentation zu Ihrer Datenbank.

ClickHouse 26+-Parameter

  • async_insert
  • autoCommit
  • compress
  • compress_algorithm
  • compress_level
  • connect_timeout
  • connection_timeout
  • continueBatchOnError
  • createDatabaseIfNotExist
  • custom_settings
  • database
  • databaseTerm
  • externalDatabase
  • fetchSize
  • format
  • jdbcCompliant
  • keep_alive_timeout
  • max_buffer_size
  • max_execution_time
  • max_result_bytes
  • max_result_rows
  • max_threads
  • namedParameter
  • query_timeout
  • receive_timeout
  • result_overflow_mode
  • retry
  • session_check
  • session_id
  • session_timeout
  • session_timezone
  • socket_timeout
  • ssl
  • sslmode
  • transactionSupport
  • use_server_time_zone
  • use_time_zone
  • wait_for_async_insert
  • wrapperObject

ClickHouse-Parameter (Legacy)

  • beta.row_binary_for_simple_insert
  • compress
  • connection_timeout
  • continueBatchOnError
  • createDatabaseIfNotExist
  • custom_http_headers
  • custom_http_params
  • default_query_settings
  • disable_frameworks_detection
  • jdbc_ignore_unsupported_values
  • jdbc_resultset_auto_close
  • jdbc_sql_parser
  • jdbc_use_max_result_rows
  • jdbcCompliance
  • max_execution_time
  • password
  • session_timezone
  • socket_timeout
  • typeMappings
  • use_server_time_zone
  • use_time_zone
  • user
  • wrapperObject

Funktionsunterstützung

Damit Looker einige Funktionen unterstützen kann, müssen diese auch von Ihrem Datenbankdialekt unterstützt werden.

Unterstützung von ClickHouse 26+

ClickHouse 26 und höher unterstützen ab Looker 26.18 die folgenden Funktionen:

Funktion Unterstützt?
Looker (Google Cloud Core)
Symmetrische Aggregate
Abgeleitete Tabellen
Persistente abgeleitete SQL-Tabellen
Persistente native abgeleitete Tabellen
Stabile Ansichten
Abfrageeabruch
SQL-basierte Pivottabellen
Zeitzonen
SSL
Zwischensummen
Zusätzliche JDBC-Parameter
Groß-/Kleinschreibung beachten
Standorttyp
Listentyp
Perzentil
Perzentil der unterschiedlichen Werte
SQL-Runner-Befehl – Prozesse anzeigen
SQL-Runner-Funktion – Tabelle beschreiben
SQL Runner-Befehl – Indexe anzeigen
SQL-Runner – „Select 10“
SQL-Runner – Anzahl
SQL – Erklären
OAuth 2.0-Anmeldedaten
Kontextkommentare
Verbindungs-Pooling
HLL-Skizzen
Aggregate Awareness
Inkrementelle PDTs
Millisekunden
Mikrosekunden
Materialisierte Ansichten
Vergleich von Zeiträumen
Ungefähre Anzahl einzelner Aufrufe
In-Database-Analysemodelle
Benutzerdefinierte Kalender

Unterstützung von ClickHouse-Funktionen

ClickHouse unterstützt ab Looker 26.18 die folgenden Funktionen:

Funktion Unterstützt?
Looker (Google Cloud Core)
Symmetrische Aggregate
Abgeleitete Tabellen
Persistente abgeleitete SQL-Tabellen
Persistente native abgeleitete Tabellen
Stabile Ansichten
Abfrageeabruch
SQL-basierte Pivottabellen
Zeitzonen
SSL
Zwischensummen
Zusätzliche JDBC-Parameter
Groß-/Kleinschreibung beachten
Standorttyp
Listentyp
Perzentil
Perzentil der unterschiedlichen Werte
SQL-Runner-Befehl – Prozesse anzeigen
SQL-Runner-Funktion – Tabelle beschreiben
SQL Runner-Befehl – Indexe anzeigen
SQL-Runner – „Select 10“
SQL-Runner – Anzahl
SQL – Erklären
OAuth 2.0-Anmeldedaten
Kontextkommentare
Verbindungs-Pooling
HLL-Skizzen
Aggregate Awareness
Inkrementelle PDTs
Millisekunden
Mikrosekunden
Materialisierte Ansichten
Vergleich von Zeiträumen
Ungefähre Anzahl einzelner Aufrufe
In-Database-Analysemodelle
Benutzerdefinierte Kalender

Nächste Schritte

Nachdem Sie die Datenbankverbindung hergestellt haben, konfigurieren Sie die Authentifizierungsoptionen.