GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare il sistema di database OLAP di ClickHouse su Debian 11

ClickHouse è un sistema di gestione di database gratuito, open source e orientato alle colonne. Viene utilizzato per l'elaborazione analitica online e consente di generare report analitici utilizzando query SQL in tempo reale. Memorizza i record in blocchi raggruppati per colonne anziché per righe. Pertanto, dedica meno tempo alla lettura dei dati durante il completamento delle query. Inoltre, i database orientati alle colonne possono calcolare e restituire risultati molto più velocemente rispetto ai tradizionali sistemi basati su righe per determinati carichi di lavoro.

In questo post, ti mostreremo come installare il database ClickHoust su Debian 11.

Prerequisiti

  • Un server che esegue Debian 11.
  • Sul tuo server è configurata una password di root.

Per iniziare

Prima di iniziare, dovrai aggiornare i tuoi pacchetti di sistema alla versione aggiornata. Puoi aggiornarli eseguendo il seguente comando:

apt-get update -y

Una volta aggiornati tutti i pacchetti, installa altri pacchetti richiesti utilizzando il comando seguente:

apt-get install curl gnupg2 wget git apt-transport-https ca-certificates -y

Una volta installati tutti i pacchetti richiesti, puoi procedere al passaggio successivo.

Installa ClickHouse su Debian 11

Per impostazione predefinita, il pacchetto ClickHouse non è incluso nel repository predefinito di Debian 11. Quindi dovrai aggiungere il repository ClickHouse al tuo sistema.

Innanzitutto, scarica e aggiungi la chiave GPG utilizzando il seguente comando:

apt-key adv --keyserver keyserver.ubuntu.com --recv E0C56BD4

Otterrai il seguente output:

Executing: /tmp/apt-key-gpghome.WyTt1Mpvh7/gpg.1.sh --keyserver keyserver.ubuntu.com --recv E0C56BD4
gpg: key C8F1E19FE0C56BD4: public key "ClickHouse Repository Key <[email protected]>" imported
gpg: Total number processed: 1
gpg:               imported: 1

Quindi, aggiungi il repository ClickHouse all'APT usando il seguente comando:

echo "deb http://repo.yandex.ru/clickhouse/deb/stable/ main/" | tee /etc/apt/sources.list.d/clickhouse.list

Quindi, aggiorna il repository e installa ClickHouse con il seguente comando:

apt-get update -y
apt-get install clickhouse-server clickhouse-client -y

Durante l'installazione, ti verrà chiesto di fornire una password per l'utente amministratore di ClickHouse come mostrato di seguito:

Enter password for default user: 
Password for default user is saved in file /etc/clickhouse-server/users.d/default-password.xml.
Setting capabilities for clickhouse binary. This is optional.
 chown -R clickhouse:clickhouse '/etc/clickhouse-server'

ClickHouse has been successfully installed.

Start clickhouse-server with:
 sudo clickhouse start

Start clickhouse-client with:
 clickhouse-client --password

Synchronizing state of clickhouse-server.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable clickhouse-server
Created symlink /etc/systemd/system/multi-user.target.wants/clickhouse-server.service → /etc/systemd/system/clickhouse-server.service.
Setting up clickhouse-client (21.12.3.32) ...

Una volta completata l'installazione, puoi procedere al passaggio successivo.

Gestisci il servizio ClickHouse

Ora puoi avviare il servizio ClickHouse e abilitarlo per l'avvio al riavvio del sistema con il seguente comando:

systemctl start clickhouse-server 
systemctl enable clickhouse-server

Ora puoi verificare lo stato di ClickHouse con il seguente comando:

systemctl status clickhouse-server

Otterrai il seguente output:

? clickhouse-server.service - ClickHouse Server (analytic DBMS for big data)
     Loaded: loaded (/etc/systemd/system/clickhouse-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-12-31 11:22:57 UTC; 9s ago
   Main PID: 18152 (clckhouse-watch)
      Tasks: 206 (limit: 2341)
     Memory: 108.2M
        CPU: 931ms
     CGroup: /system.slice/clickhouse-server.service
             ??18152 clickhouse-watchdog        --config=/etc/clickhouse-server/config.xml --pid-file=/run/clickhouse-server/clickhouse-serve>
             ??18153 /usr/bin/clickhouse-server --config=/etc/clickhouse-server/config.xml --pid-file=/run/clickhouse-server/clickhouse-serve>

Dec 31 11:22:57 debian11 systemd[1]: Started ClickHouse Server (analytic DBMS for big data).
Dec 31 11:22:57 debian11 clickhouse-server[18152]: Processing configuration file '/etc/clickhouse-server/config.xml'.
Dec 31 11:22:57 debian11 clickhouse-server[18152]: Logging trace to /var/log/clickhouse-server/clickhouse-server.log
Dec 31 11:22:57 debian11 clickhouse-server[18152]: Logging errors to /var/log/clickhouse-server/clickhouse-server.err.log
Dec 31 11:22:58 debian11 clickhouse-server[18153]: Processing configuration file '/etc/clickhouse-server/config.xml'.
Dec 31 11:22:58 debian11 clickhouse-server[18153]: Saved preprocessed configuration to '/var/lib/clickhouse/preprocessed_configs/config.xml'.
Dec 31 11:22:58 debian11 clickhouse-server[18153]: Processing configuration file '/etc/clickhouse-server/users.xml'.
Dec 31 11:22:58 debian11 clickhouse-server[18153]: Merging configuration file '/etc/clickhouse-server/users.d/default-password.xml'.
Dec 31 11:22:58 debian11 clickhouse-server[18153]: Saved preprocessed configuration to '/var/lib/clickhouse/preprocessed_configs/users.xml'.

Come utilizzare ClickHouse

In questa sezione ti mostreremo come connetterti a ClickHouse, creare un database e una tabella.

Innanzitutto, connettiti a ClickHouse usando il seguente comando:

clickhouse-client --password

Ti verrà chiesto di fornire la password predefinita come mostrato di seguito:

ClickHouse client version 21.12.3.32 (official build).
Password for user (default): 

Provide the password which you have set during the installation and press the Enter key. You will get the following shell:

Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 21.12.3 revision 54452.

debian11 :) 

Ora, crea un database chiamato testdb usando il seguente comando:

debian11 :) CREATE DATABASE testdb;

Otterrai il seguente output:

CREATE DATABASE testdb

Query id: a48b3031-a363-4357-b4f9-ffd3edd73b0e

Ok.

0 rows in set. Elapsed: 0.005 sec. 

Quindi, cambia il database in testdb usando il seguente comando:

debian11 :) USE testdb;

Otterrai il seguente output:

USE testdb

Query id: 827e0d94-c3eb-46ec-ba04-97386a58e531

Ok.

0 rows in set. Elapsed: 0.001 sec. 

Quindi, crea una tabella denominata table1 utilizzando il comando seguente:

debian11 :) CREATE TABLE table1 (? id UInt64,? name String,? url String,? created DateTime?) ENGINE = MergeTree()?PRIMARY KEY id?ORDER BY id;

Otterrai il seguente output:

CREATE TABLE table1
(
    `id` UInt64,
    `name` String,
    `url` String,
    `created` DateTime
)
ENGINE = MergeTree
PRIMARY KEY id
ORDER BY id

Query id: 922f4fe1-283f-4e5d-9966-498344b2aa4d

Ok.

0 rows in set. Elapsed: 0.006 sec. 

Quindi, inserisci un valore nella tabella usando il seguente comando:

debian11 :) INSERT INTO table1 VALUES (1, 'jay', 'https://www.howtoforge.com', '2021-12-31 00:01:01');

Otterrai il seguente output:

INSERT INTO table1 FORMAT Values

Query id: be1c57cd-5759-47cd-8649-ce82cd0c1f7d

Ok.

1 rows in set. Elapsed: 0.005 sec. 

Quindi, aggiungi una nuova colonna usando il seguente comando:

debian11 :) ALTER TABLE table1 ADD COLUMN location String;

Otterrai il seguente output:

ALTER TABLE table1
    ADD COLUMN `location` String

Query id: 106fa166-afda-4598-a32c-b50da237bfe5

Ok.

0 rows in set. Elapsed: 0.007 sec. 

Se vuoi recuperare i dati dalla tabella, esegui il comando seguente:

debian11 :) SELECT url, name FROM table1 WHERE url = 'https://www.howtoforge.com' LIMIT 1;

Otterrai il seguente output:

SELECT
    url,
    name
FROM table1
WHERE url = 'https://www.howtoforge.com'
LIMIT 1

Query id: 8ee433ec-0eb1-4409-b9a8-7e5794b872ce

??url?????????????????????name??
? https://www.howtoforge.com ? jay  ?
????????????????????????????????

1 rows in set. Elapsed: 0.007 sec. 

Per rimuovere una colonna, esegui il comando seguente:

debian11 :) ALTER TABLE table1 DROP COLUMN location;

Per rimuovere una tabella, esegui il seguente comando:

debian11 :) DROP TABLE table1;

Per rimuovere un database, esegui il comando seguente:

debian11 :) DROP DATABASE testdb;

Per uscire dalla shell di ClickHouse, esegui il seguente comando:

debian11 :) exit;

Abilita interfaccia utente Web ClickHouse

ClickHouse fornisce anche un'interfaccia basata sul web per gestire il database. Ma è disabilitato per impostazione predefinita. Puoi abilitarlo modificando il file di configurazione di ClickHouse:

nano /etc/clickhouse-server/config.xml

Decommenta e modifica le seguenti righe:

 <listen_host>0.0.0.0</listen_host>
    <http_server_default_response><![CDATA[<html ng-app="SMI2"><head><base href="http://ui.tabix.io/"></head><body><div ui-view="" class="content-ui"></div><script src="http://loader.tabix.io/master.js"></script></body></html>]]></http_server_default_response>

Salva e chiudi il file, quindi riavvia il servizio ClickHouse per applicare le modifiche alla configurazione:

systemctl restart clickhouse-server

Accedi all'interfaccia utente Web di ClickHouse

Per impostazione predefinita, l'interfaccia utente Web di ClickHouse è in ascolto sulla porta 8123 . Puoi verificarlo usando il seguente comando:

ss -antpl | grep 8123

Dovresti vedere il seguente output:

LISTEN 0      4096         0.0.0.0:8123      0.0.0.0:*    users:(("clickhouse-serv",pid=18580,fd=158)) 

Ora apri il tuo browser web e accedi all'interfaccia utente web di ClickHouse utilizzando l'URL http://your-server-ip:8123 . Dovresti vedere la seguente schermata:

Fornisci il tuo nome utente e password predefiniti e fai clic su Accedi pulsante. Una volta effettuato l'accesso, dovresti vedere la seguente schermata:

Conclusione

Nella guida sopra, abbiamo spiegato come installare il sistema di database ClickHouse su Debian 11. Abbiamo anche spiegato come creare e gestire database e abilitare l'interfaccia web ClickHouse. Spero che questo ti aiuterà a installare ClickHouse nell'ambiente di produzione. Sentiti libero di chiedermi se hai domande.


Debian
  1. Come installare PostgreSQL su Debian 10

  2. Come installare Nextcloud 15 su Debian 9

  3. Come installare Gradle su Debian 10

  4. Come installare AnyDesk su Debian 10

  5. Come installare ClickHouse su Debian 9

Come installare webmin su Debian 11

Come installare OwnCloud 9 su Debian 8

Come installare WordPress su Debian 8

Come installare MariaDB su Debian 8

Come installare PostgreSQL su Debian 10 Buster

Come installare Zabbix su Debian 11