GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie ClickHouse unter CentOS 7

Einführung

ClickHouse ist ein spaltenorientiertes Open-Source-Datenbankverwaltungssystem. Es ist eine schnelle, skalierbare und effiziente Software für die in Echtzeit aktualisierte Datenanalyse.

Es verbraucht weniger Speicher und CPU als zeilenorientierte Datenbanken, da es keine unnötigen Daten verarbeiten muss. Daher hat es eine schnelle Antwortzeit auf Abfragen und bietet letztendlich eine optimale Leistung. Außerdem versteht es SQL, was es benutzerfreundlicher macht.

ClickHouse ist sehr flexibel. Sie können dieses Verwaltungssystem auf allen Betriebssystemen ausführen, von Bare-Metal-Servern bis hin zu Cloud-Servern, sowie auf jedem Linux-, MacOS- oder FreeBSD-Betriebssystem.

Diese Anleitung zeigt Ihnen, wie Sie ClickHouse auf Ihrem CentOS 7-Server installieren und damit beginnen.

Voraussetzungen

  • Zugriff auf ein Terminalfenster/eine Befehlszeile
  • Ein Server, auf dem CentOS 7 mit sudo-Berechtigungen ausgeführt wird
  • Ein Texteditor (z. B. Nano)
  • SSH-Dienst zur Verbindung mit Ihrem Remote-Server

Über SSH verbinden und aktualisieren

1. Bevor Sie ClickHouse installieren können, müssen Sie auf Ihren entfernten CentOS-Server zugreifen.

Führen Sie den folgenden Befehl aus und ersetzen Sie your_username und host_ip_address mit Ihren jeweiligen Vorgaben:

ssh [email protected]_ip_address

2. Nachdem Sie sich mit dem Server verbunden haben, stellen Sie sicher, dass Sie das System aktualisieren, indem Sie den folgenden Befehl ausführen:

sudo yum update

ClickHouse unter CentOS installieren

1. Installieren Sie zuerst die Softwareabhängigkeiten, die das pygpgme package enthalten (zum Hinzufügen und Überprüfen von GPG-Signaturen) und yum-utils (für Quell-RPM-Verwaltung):

sudo yum install -y pygpgme yum-utilshere

2. Um die neueste Version von ClickHouse zu installieren, müssen Sie auf ein YUM-Repository zugreifen, das von der Beratungsfirma von ClickHouse, Altinity, verwaltet wird . Sie möchten jedoch auch sicherstellen, dass das Installationspaket Ihrem Server keinen Schaden zufügt.

Erstellen Sie zunächst die Repository-Datei mit einem Texteditor Ihrer Wahl (in diesem Beispiel haben wir Nano verwendet):

sudo nano /etc/yum.repos.d/altinity_clickhouse.repo

3. Fügen Sie dann der neu erstellten Datei den folgenden Inhalt hinzu:

[altinity_clickhouse]
name=altinity_clickhouse
baseurl=https://packagecloud.io/altinity/clickhouse/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/altinity/clickhouse/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

[altinity_clickhouse-source]
name=altinity_clickhouse-source
baseurl=https://packagecloud.io/altinity/clickhouse/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/altinity/clickhouse/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

4. Speichern und schließen Sie die Repository-Datei.

5. Als nächstes aktivieren Sie die Repositories mit dem Befehl:

sudo yum -q makecache -y --disablerepo'*' --enablerepo='altinity_clickhouse'

6. Sobald die Ausgabe bestätigt, dass Sie den GPG-Schlüssel hinzugefügt haben, können Sie mit der Installation von ClickHouse fortfahren. Laden Sie die Clickhouse-Server- und Clickhouse-Client-Pakete mit dem folgenden Befehl herunter:

sudo yum install -y clickhouse-server clickhouse-client

7. Damit haben Sie ClickHouse auf Ihrem CentOS 7-Server installiert.

So starten Sie den ClickHouse-Dienst

Der systemd service vom clickhouse-server erstellt Paket ist verantwortlich für das Starten, Neustarten und Stoppen der Datenbank.

Zum Start Verwenden Sie für den ClickHouse-Server den folgenden Befehl:

sudo service clickhouse-server start here

Das Terminal sollte die folgende Ausgabe anzeigen:


Sie können auch überprüfen, ob der Dienst korrekt läuft mit:

sudo service clickhouse-server status

Die Nachricht, die Sie erhalten, sollte wie im Bild unten aussehen:

So erstellen Sie Datenbanken und Tabellen

Um Datenbanken und Tabellen zu erstellen, müssen Sie zunächst eine Clientsitzung starten. Sobald die Eingabeaufforderung geöffnet wird, können Sie damit SQL-Anweisungen ausführen.

clickhouse-client --multiline

Während der clickhouse-client Befehl öffnet eine neue Sitzung, die --multiline Flag ermöglicht es Ihnen, Abfragen auszuführen, die mehrere Zeilen einnehmen.

Datenbank erstellen

Eine Datenbank ist im Wesentlichen ein Verzeichnis für Tabellen. Die Syntax zum Erstellen einer Datenbank lautet:

CREATE DATABASE db_name

Die Ausgabe bestätigt, dass die Datenbank erstellt wurde, indem die Meldung „Ok. angezeigt wird “, zusammen mit der Anzahl der Zeilen im Satz und die Zeit es dauerte zu erstellen.

Zum Erstellen einer Datenbank auf allen Servern eines Clusters , fügen Sie die Klausel [ON CLUSTER cluster_id] zur grundlegenden Syntax hinzu:

CREATE DATABASE db_name [ON CLUSTER cluster_id]

Um Daten von einem entfernten MySQL abzurufen Server zur neu erstellten Datenbank hinzufügen [ENGINE = engine(…)] -Klausel, wie im folgenden Befehl:

CREATE DATABASE db_name [ENGINE = engine(…)]

Erstelle eine Tabelle

Die Syntax zum Erstellen einer Tabelle lautet:

CREATE TABLE table_name
(
    column_name1 column_type [options],
    column_name2 column_type [options],
) ENGINE = engine

Der Typ von ENGINE Sie wählen hängt von der Anwendung ab. ClickHouse hat seine native Datenbank-Engine, die konfigurierbare Tabellen-Engines und den SQL-Dialekt unterstützt.
Im Allgemeinen werden Engines der MergeTree-Familie am häufigsten verwendet. ClickHouse unterstützt jedoch auch MySQL.

Beim Erstellen einer Tabelle müssen Sie zuerst die Datenbank öffnen, die Sie ändern möchten. Verwenden Sie den folgenden Befehl:

ch:) USE db_name

Die Ausgabe bestätigt, dass Sie sich in der angegebenen Datenbank befinden.

Als nächstes können Sie eine Tabelle mit allen gewünschten Spalten (und Spaltentypen) erstellen. In diesem Beispiel erstellen wir einen Client Tabelle bestehend aus sechs (6) Spalten mit dem Befehl:

ch:) CREATE TABLE Client (
ch:) ClientID UInt64,
ch:) FirstName String,
ch:) LastName String,
ch:) Address String,
ch:) City String,
ch:) BirthDate DateTime
ch:) ) ENGINE = MergeTree()
ch:) PRIMARY KEY ClientID
ch:) ORDER BY ClientID;

Ein Name und eine Spalte tippen Definieren Sie jede Spalte. Zu den Spaltentypen im Beispiel gehören:

  • UInt64:zum Speichern ganzer Zahlen im Bereich von 0 bis 18446744073709551615
  • String:zum Speichern von Text, der Zeichen, Zahlen und Leerzeichen enthalten kann
  • DateTime:zum Speichern von Datum und Uhrzeit im Format YYYY-MM-DD HH:MM:SS

In diesem Fall die Speicher-Engine ist die stabilste Tabellen-Engine von ClickHouse – MergeTree .

Als nächstes der PRIMERY KEY definiert, welche Spalte verwendet werden soll, um alle Datensätze der Tabelle zu identifizieren.

Schließlich die ORDER BY -Klausel können Sie die Ergebnisse basierend auf der definierten Spalte anordnen.

Nach der Erstellung sollte die Ausgabe wie folgt aussehen:

CREATE TABLE Client
(
ClientID UInt64,
FirstName String,
LastName String,
Address String,
City String,
BirthDate DateTime
)
ENGINE = MergeTree()
PRIMARY KEY ClientID
ORDER BY ClientID

Ok.

0 rows in set. Elapsed: 0.010 sec.

Daten und Spalten einfügen, aktualisieren und löschen

Um Zeilen einzufügen Verwenden Sie in einer Tabelle die folgende Abfragesyntax:

INSERT INTO table_name VALUES (column_1_value, column_2_value, ....);

Wenn wir beispielsweise Zeilen in die zuvor erstellte Client-Tabelle einfügen wollten, würden wir den folgenden Befehl ausführen:

TO BE ADDED

Beim Hinzufügen neuer Spalten zu einer Tabelle verwenden Sie die Syntax:

ALTER TABLE table_name ADD COLUMN column_name column_type;

Wenn Sie beispielsweise eine Spalte Beruf zur Kundentabelle hinzufügen möchten, lautet der Befehl:

ALTER TABLE Client ADD COLUMN Profession String;

So fügen Sie mehrere Spalten hinzu mit der Syntax:

ALTER TABLE table_name ADD COLUMN column_1 column_type, column_2 column_type, column_3 column_type;

ClickHouse-Datenbanken verwenden nicht standardmäßige SQL-Abfragen zum Aktualisieren und Löschen, die asynchrone Batch-Operationen beinhalten. Die folgenden Befehle sind für die Versionen 18.12.14 oder neuer verfügbar.

Die Syntax zum Aktualisieren ist:

ALTER TABLE table_name UPDATE  column_1 = value_1, column_2 = value_2 ...  WHERE  filter_conditions;

Die Syntax zum Löschen von Zeilen ist:

ALTER TABLE table_name DELETE WHERE  filter_conditions;

Die Syntax zum Löschen von Spalten ist:

ALTER TABLE table_name DROP COLUMN column_name;

Löschen von Tabellen und Datenbanken

Um eine Tabelle zu löschen oder zu löschen, verwenden Sie die folgende Syntax:

DROP TABLE table_name

Wenn wir die Clint-Tabelle löschen wollten, verwenden Sie den Befehl:

DROP TABLE Client

Die Syntax zum vollständigen Löschen einer Datenbank ist:

DROP database db_name

Daten abfragen oder abrufen

Verwenden Sie die SELECT-Klausel, um Daten aus Zeilen und Spalten abzurufen. Die grundlegende Syntax ist:

SELECT func_1(column_1), func_2(column_2) FROM table_name WHERE filter_conditions row_options;

Wenn Sie einzelne Ausgabewerte abrufen möchten, die die Werte mehrerer Zeilen und Spalten zusammenfassen, können Sie Aggregatfunktionen verwenden.

Einige Beispiele für gängige Aggregatfunktionen, die von ClickHouse unterstützt werden, sind:
Durchschn. (Durchschnitt):berechnet das durchschnittliche Volumen der ausgewählten Spalte; nur für Zahlen verwendet
Zählen :Berechnet die Anzahl der Zeilen, die den angegebenen Kriterien entsprechen
Summe (Summierung):berechnet die Summe einer numerischen Spalte; nur für Zahlen verwendet
einzigartig :berechnet die ungefähre Anzahl der Zeilen, die den Kriterien entsprechen; Wird für Zahlen, Zeichenfolgen und Daten verwendet


Ubuntu
  1. So installieren Sie Minecraft Server unter CentOS 7

  2. So installieren Sie Nginx unter CentOS 8

  3. So installieren Sie Teamspeak 3 Server auf CentOS 8

  4. So installieren Sie ProFTPD unter CentOS 7

  5. So installieren Sie ClickHouse unter CentOS 7

So installieren Sie Shoutcast Server auf CentOS 8

So installieren Sie Lighttpd unter CentOS

So installieren Sie VestaCP auf CentOS 6

So installieren Sie VNC-Server unter CentOS 7

So installieren Sie Minecraft Server auf CentOS 6

So installieren Sie VNC-Server unter CentOS 6