GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare ClickHouse su CentOS 7

Introduzione

ClickHouse è un sistema di gestione di database orientato alle colonne open source. È un software veloce, scalabile ed efficiente da utilizzare per l'analisi dei dati aggiornati in tempo reale.

Utilizza meno memoria e CPU rispetto ai database orientati alle righe poiché non deve elaborare dati non necessari. Pertanto, ha un tempo di risposta alle query rapido, fornendo in definitiva prestazioni ottimali. Inoltre, comprende SQL, rendendolo più intuitivo.

ClickHouse è altamente flessibile. Puoi eseguire questo sistema di gestione su qualsiasi cosa, dai server bare metal ai server cloud, nonché su qualsiasi sistema operativo Linux, MacOS o FreeBSD.

Questa guida ti mostrerà come installare e iniziare a utilizzare ClickHouse sul tuo server CentOS 7.

Prerequisiti

  • Accesso a una finestra di terminale/riga di comando
  • Un server che esegue CentOS 7 con privilegi sudo
  • Un editor di testo (come Nano)
  • Servizio SSH per la connessione al tuo server remoto

Connetti tramite SSH e aggiornamento

1. Prima di poter installare ClickHouse, devi accedere al tuo server CentOS remoto.

Esegui il comando seguente e sostituisci your_username e host_ip_address con le rispettive specifiche:

ssh [email protected]_ip_address

2. Dopo esserti connesso al server, assicurati di aggiornare il sistema eseguendo il comando:

sudo yum update

Installa ClickHouse su CentOS

1. Innanzitutto, installa le dipendenze del software, che includono il pygpgme package (per aggiungere e verificare le firme GPG) e yum-utils (per la gestione RPM sorgente):

sudo yum install -y pygpgme yum-utilshere

2. Per installare l'ultima versione di ClickHouse, devi accedere a un repository YUM gestito dalla società di consulenza di ClickHouse, Altinity . Tuttavia, vuoi anche assicurarti che il pacchetto di installazione non danneggi il tuo server.

Inizia creando il file del repository con un editor di testo a tua scelta (in questo esempio abbiamo usato Nano):

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

3. Quindi, aggiungi il seguente contenuto al file appena creato:

[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. Salva e chiudi il file del repository.

5. Successivamente, abilita i repository con il comando:

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

6. Una volta che l'output conferma di aver aggiunto la chiave GPG, puoi passare all'installazione di ClickHouse. Scarica i pacchetti clickhouse-server e clickhouse-client con il seguente comando:

sudo yum install -y clickhouse-server clickhouse-client

7. Con questo hai installato ClickHouse sul tuo server CentOS 7.

Come avviare il servizio ClickHouse

Il systemd service creato dal clickhouse-server il pacchetto è responsabile dell'avvio, del riavvio e dell'arresto del database.

Per iniziare il server ClickHouse usa il comando:

sudo service clickhouse-server start here

Il terminale dovrebbe visualizzare il seguente output:


Puoi anche verificare se il servizio funziona correttamente con:

sudo service clickhouse-server status

Il messaggio che ricevi dovrebbe essere come nell'immagine qui sotto:

Come creare database e tabelle

Per creare database e tabelle, devi prima avviare una sessione client. Una volta aperto il prompt, puoi usarlo per eseguire istruzioni SQL.

clickhouse-client --multiline

Mentre il clickhouse-client il comando apre una nuova sessione, il --multiline flag ti consente di eseguire query che occupano più righe.

Crea un database

Un database è essenzialmente una directory per le tabelle. La sintassi per creare un database è:

CREATE DATABASE db_name

L'output confermerà la creazione del database visualizzando il messaggio “Ok. ”, insieme al numero di righe nel set e il tempo ci è voluto per creare.

Per creare un database su tutti i server da un cluster , aggiungi la clausola [ON CLUSTER cluster_id] alla sintassi di base:

CREATE DATABASE db_name [ON CLUSTER cluster_id]

Per recuperare dati da un MySQL remoto server al database appena creato aggiungi il [ENGINE = engine(…)] clausola, come nel comando seguente:

CREATE DATABASE db_name [ENGINE = engine(…)]

Crea una tabella

La sintassi per creare una tabella è:

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

Il tipo di MOTORE la scelta dipende dall'applicazione. ClickHouse ha il suo motore di database nativo che supporta i motori di tabella configurabili e il dialetto SQL.
In genere, i motori della famiglia MergeTree sono i più utilizzati. Tuttavia, ClickHouse supporta anche MySQL.

Quando crei una tabella, devi prima aprire il database che vuoi modificare. Usa il seguente comando:

ch:) USE db_name

L'output confermerà che sei nel database specificato.

Successivamente, puoi creare una tabella con tutte le colonne desiderate (e i tipi di colonna). In questo esempio creeremo un Cliente tabella composta da sei (6) colonne usando il comando:

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;

Un nome e una colonna tipo definire ogni colonna. I tipi di colonna nell'esempio includono:

  • UInt64:per memorizzare numeri interi da 0 a 18446744073709551615
  • Stringa:per memorizzare testo che può contenere caratteri, numeri e spazi
  • DateTime:per memorizzare date e ora nel formato AAAA-MM-GG HH:MM:SS

In questo caso, il MOTORE di stoccaggio è il motore di tabelle ClickHouse più robusto:MergeTree .

Successivamente, la CHIAVE PRIMARIA definisce quale colonna utilizzare per identificare tutti i record della tabella.

Infine, il ORDINA PER La clausola ti consente di ordinare i risultati in base alla colonna definita.

Al momento della creazione, l'output dovrebbe apparire come segue:

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.

Inserisci, aggiorna ed elimina dati e colonne

Per inserire righe in una tabella, usa la seguente sintassi di query:

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

Ad esempio, se volessimo inserire righe nella tabella Client precedentemente creata, eseguiremmo il seguente comando:

TO BE ADDED

Quando aggiungi nuove colonne in una tabella, usa la sintassi:

ALTER TABLE table_name ADD COLUMN column_name column_type;

Ad esempio, se vuoi aggiungere una colonna Professione alla tabella Cliente, il comando sarebbe:

ALTER TABLE Client ADD COLUMN Profession String;

Per aggiungere più colonne usando la sintassi:

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

I database ClickHouse utilizzano query SQL non standard per l'aggiornamento e l'eliminazione, che includono operazioni batch asincrone. I seguenti comandi sono disponibili per le versioni 18.12.14 o successive.

La sintassi per aggiornamento è:

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

La sintassi per eliminazione di righe è:

ALTER TABLE table_name DELETE WHERE  filter_conditions;

La sintassi per eliminazione di colonne è:

ALTER TABLE table_name DROP COLUMN column_name;

Eliminazione di tabelle e database

Per eliminare o eliminare una tabella, utilizza la seguente sintassi:

DROP TABLE table_name

Se vogliamo eliminare la tabella Clint, utilizzare il comando:

DROP TABLE Client

La sintassi per eliminare completamente un database è:

DROP database db_name

Interroga o recupera dati

Utilizzare la clausola SELECT per recuperare i dati da righe e colonne. La sintassi di base è:

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

Se desideri recuperare valori di output singoli che riepilogano i valori di più righe e colonne, puoi utilizzare le funzioni di aggregazione.

Alcuni esempi di funzioni aggregate comuni supportate da ClickHouse sono:
media (media):calcola il volume medio della colonna selezionata; usato solo per i numeri
conta :calcola il numero di righe che corrispondono ai criteri specificati
somma (somma):calcola la somma di una colonna numerica; usato solo per i numeri
unique :calcola il numero approssimativo di righe corrispondenti ai criteri; utilizzato per numeri, stringhe e date


Ubuntu
  1. Come installare il server Minecraft su CentOS 7

  2. Come installare Nginx su CentOS 8

  3. Come installare Teamspeak 3 Server su CentOS 8

  4. Come installare ProFTPD su CentOS 7

  5. Come installare ClickHouse su CentOS 7

Come installare Shoutcast Server su CentOS 8

Come installare Lighttpd su CentOS

Come installare VestaCP su CentOS 6

Come installare il server VNC su CentOS 7

Come installare il server Minecraft su CentOS 6

Come installare il server VNC su CentOS 6