ClickHouse-Client für Mac
Führe analytisches SQL über die HTTP-Schnittstelle von ClickHouse aus, lies Plan, Pipeline oder Zeilenschätzung einer Abfrage und verwalte MergeTree-Parts und Partitionen im Parts-Tab der Tabelle. Lange Abfragen melden während der Ausführung gelesene Zeilen; Stoppen beendet sie auf dem Server.
Funktioniert auf MacTreiber in der Mac-App enthalten


Auf einen Blick
- Abfragesprache
- SQL
- Treiber
- In der Mac-App enthalten
- Verbinden über
- Host und Port, SSH-Tunnel, SSL/TLS
- Standardport
- 8123
- iPhone und iPad
- Lässt sich nicht öffnen
Verbinden
Gib Host und HTTP-Port, einen Benutzer und auf Wunsch eine Datenbank an. Der Datenbankwechsel erfolgt direkt; ein offener Tab bleibt bei seiner ursprünglichen Datenbank. Ansicht > Seitenleiste als Baum zeigt die Serverdatenbanken als direkt aufklappbaren Baum.
Wähle einen beliebigen SSL-Modus, um auf HTTPS umzuschalten. Port 443 oder 8443, der von ClickHouse Cloud verwendete Port, aktiviert Identität prüfen. Dabei wird das Zertifikat gegen deine CA-Datei oder den System-Vertrauensspeicher geprüft. CA prüfen braucht eine CA-Datei; Client-Zertifikat und Schlüssel ermöglichen den Zugang zu Servern mit gegenseitigem TLS.
Erreiche einen entfernten Server ohne TLS über einen SSH-Tunnel, statt unverschlüsseltes HTTP über das Netzwerk zu senden.
Abfragen und bearbeiten
Jede Abfrage trägt ihre eigene ID und fordert Fortschrittsmeldungen an, sodass eine lange Abfrage die gelesenen Zeilen meldet. Stoppen sendet KILL QUERY für diese ID, und das Abfragezeitlimit der Verbindung wird an den Server weitergegeben.
Das Ausführungsplan-Menü bietet Plan, Pipeline, AST, Syntax und Schätzung. Die eingerückte Ausgabe wird als Diagramm oder Baum dargestellt; Schätzung zeigt die Zeilen, Marks und Parts, die eine Abfrage lesen würde.
Rasteränderungen werden als INSERT, ALTER TABLE … UPDATE und ALTER TABLE … DELETE gesendet, zuvor mit SQL-Vorschau. ClickHouse führt Änderungen und Löschungen als Hintergrundmutationen aus; Speichern bedeutet daher angenommen, noch nicht angewendet. system.mutations zeigt den Fortschritt. Eine materialisierte Sicht öffnet sich schreibgeschützt.
Ein Ergebnis mit ClickHouse-Punkt- oder Ring-Tupeln öffnet sich in der Kartenansicht. Eine Abfrage mit eigener FORMAT-Klausel zeigt die rohe Serverausgabe in einer Spalte; lasse die Klausel für ein Raster weg.
Tabellen, Parts und Partitionen
Eine Tabelle öffnet sich mit den Tabs Struktur, Indizes, DDL und Parts. Indizes zeigt den Sortierschlüssel und Data-Skipping-Indizes; DDL zeigt das vollständige CREATE TABLE samt Engine und Einstellungen.
Parts listet jeden Part aus system.parts mit Partition, Zeilen, Größe auf dem Datenträger, Änderungszeit und Aktiv-Flag auf und führt dort Optimieren, Partition löschen und Partition abtrennen aus.
Der Struktur-Tab fügt Spalten hinzu, ändert und entfernt sie und entfernt Data-Skipping-Indizes. Sortier- und Primärschlüssel werden beim Erstellen der Tabelle festgelegt. Füge daher einen Data-Skipping-Index mit ALTER TABLE … ADD INDEX hinzu und erstelle die Tabelle für andere Änderungen neu.
Überwachen
Das Server-Dashboard zeigt aktive Abfragen, aktive Merges, Part-Mutationen und Datenträgernutzung, listet andere Sitzungen jeweils mit Sitzung beenden auf und liest langsame Abfragen aus system.query_log: die zuletzt abgeschlossenen Abfragen, die länger als eine Sekunde dauerten.
Daten übertragen
Lade CSV, TSV, JSON, JSONL, XLSX und SQL-Dateien mit Importieren und exportiere Tabellen oder Abfrageergebnisse als CSV, JSON, SQL, XLSX, Markdown, HTML und XML. Enthält eine Spalte auch nur einen ungültigen UTF-8-Wert, erscheint sie im Raster als Hex; wähle toValidUTF8(column), um sie als Text zu lesen.
iPhone und iPad
Die App für iPhone und iPad hat keinen ClickHouse-Treiber. Vom Mac synchronisierte ClickHouse-Verbindungen erscheinen in ihrer Liste, lassen sich aber nicht öffnen.
Grenzen
- Verbindungen nutzen die HTTP-Schnittstelle von ClickHouse. Das native TCP-Protokoll wird nicht verwendet.
- TLS ist standardmäßig aus. Wähle im Verbindungsformular einen SSL-Modus für HTTPS.
- Keine Fremdschlüssel und keine Transaktionen.
- Eine SET-Anweisung wirkt nicht in der nächsten Abfrage weiter.
Fragen zu ClickHouse
Wie ändere ich eine Einstellung für eine Abfrage?
Setze es in eine SETTINGS-Klausel der Abfrage selbst, etwa SELECT … SETTINGS max_threads = 4. Jede Anweisung ist eine eigene HTTP-Anfrage ohne Sitzung; ein separates SET ist daher bei der nächsten wieder weg.
Warum verbindet sich Port 9000 nicht?
Port 9000 ist der native TCP-Port von ClickHouse, den TablePro nicht nutzt. Verbinde dich mit dem HTTP-Port oder mit 8443 für HTTPS bei ClickHouse Cloud und prüfe, ob die HTTP-Schnittstelle aktiviert ist: Eine Anfrage an /ping auf diesem Port antwortet mit Ok.
TablePro herunterladen
Erfordert macOS 13 Ventura oder neuer