sql >> Databáze >  >> RDS >> Database

Jak nainstalovat a nakonfigurovat ClickHouse na Ubuntu 20.04

Co je ClickHouse?

ClickHouse je open-source sloupcově orientovaný DBMS (nebo systém správy databází) primárně používaný pro OLAP (nebo online analytické zpracování dotazů). Je schopen bleskově rychlého generování analytických dat v reálném čase a vytváření sestav pomocí SQL dotazů. Je odolný proti chybám, škálovatelný, vysoce spolehlivý a obsahuje sadu nástrojů bohatou na funkce.

V běžné databázi jsou data uložena v tabulkách, sloupcích a řádcích. V tabulce jsou související hodnoty fyzicky uloženy vedle sebe v jednom řádku, což je rozhodující pro to, jak funguje. Takto funguje většina databází typu řetězců.

Několik příkladů této formy databáze je:

  • MySQL
  • Postgres
  • SQLite

Data jsou uložena ve sloupcové databázi, jak je uvedeno níže:

Vypadá to podobně, ale rozdíly jsou následující:hodnoty z různých sloupců jsou uloženy odděleně, zatímco data z jednoho sloupce jsou uložena společně. Příklady sloupcově orientovaných tabulek:

  • Vertika
  • InfiniDB
  • Google Dremel

Takové DBMS ukládají záznamy v blocích, seskupené podle sloupců spíše než podle řádků. Tím, že nenačítají data pro sloupce, tráví méně času čtením dat při spouštění dotazů, což umožňuje systémům DBMS počítat data a vracet výsledky mnohem rychleji než databáze seskupené do bloků. Sloupcově orientované databáze se obvykle nejlépe uplatní ve scénářích OLAP, kde jsou obvykle 100krát rychlejší při zpracování většiny dotazů ve srovnání s databázemi řetězcového typu.

Jak můžeme vidět z výše uvedených ilustrací, OLAP nám umožňuje organizovat velké množství dat a provádět složité dotazy o několik řádů rychleji než typická databáze. Proto je mimořádně užitečný pro práci s velkým množstvím vstupů, když je vyžadována analýza dat nebo obchodní analýza.

Využití SQL

ClickHouse používá dialekt SQL, který je podobný standardnímu Structured Query Language, ale obsahuje další rozšíření:různá pole, funkce vyššího řádu, vnořené struktury, funkce pro práci s URL a možnost pracovat s externím slovníkem, atd.

Zatímco získáváme rychlost a zpracování velkých dat, ztrácíme také další aspekty včetně následujících možností:

  • Nedostatek transakcí.
  • Silné datové typy s nutností explicitního přetypování.
  • Pro některé operace je nutné ukládat mezilehlá data v paměti RAM.
  • Nedostatek plnohodnotného optimalizátoru dotazů.
  • Bodové čtení dat v databázi.

Navzdory tomu ClickHouse prokazuje vysoký výkon a vítězí proti mnoha svým konkurentům. ClickHouse byl vyvinut k řešení problémů ve webové analýze pro Yandex.Metrica, třetí nejpopulárnější systém webové analýzy na světě. Cloudflare jej také používá ke zpracování statistik webových stránek pro své uživatele.

Předpoklady

K instalaci potřebujeme:

  • Dvoujádrový server využívající minimálně 2 GB RAM
  • OS Ubuntu 20.04 LTS
  • Přístup k uživatelskému účtu root (stejně jako všechny akce prováděné jako uživatel root).
Poznámka:Pokud jsou příkazy spouštěny jako běžný uživatel, příkaz sudo musí být součástí všech příkazů.

Instalace ClickHouse na Ubuntu 20.04

Před instalací aktualizujeme systém a balíčky na serveru.

root@host:~# apt update && apt -y upgrade
Hit:1 http://by.archive.ubuntu.com/ubuntu focal InRelease
Hit:2 http://by.archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:3 http://by.archive.ubuntu.com/ubuntu focal-backports InRelease
Get:4 http://security.ubuntu.com/ubuntu focal-security InRelease [109 kB]      
Hit:5 https://download.docker.com/linux/ubuntu focal InRelease                 
Hit:6 https://debian.neo4j.com stable InRelease                                
Fetched 109 kB in 0s (231 kB/s)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
All packages are up to date.
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@host:~# 

Yandex spravuje úložiště s nejnovější verzí ClickHouse, takže jej musíme přidat. Přidejte také klíč GPG, abyste mohli zkontrolovat úložiště a bezpečně nainstalovat ClickHouse a budoucí aktualizace.

root@host:~#  apt-key adv --keyserver keyserver.ubuntu.com --recv E0C56BD4
Executing: /tmp/apt-key-gpghome.5KK4WZQb0R/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
root@host:~# 

Přidejte úložiště do seznamu úložišť APK.

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

Dále aktualizujeme naše serverové balíčky.

root@host:~#  apt update
Hit:1 http://by.archive.ubuntu.com/ubuntu focal InRelease
Hit:2 http://by.archive.ubuntu.com/ubuntu focal-updates InRelease              
Hit:3 http://by.archive.ubuntu.com/ubuntu focal-backports InRelease            
Get:4 http://security.ubuntu.com/ubuntu focal-security InRelease [109 kB]      
Ign:5 http://repo.yandex.ru/clickhouse/deb/stable main/ InRelease              
Get:6 http://repo.yandex.ru/clickhouse/deb/stable main/ Release [749 B]        
Get:7 http://repo.yandex.ru/clickhouse/deb/stable main/ Release.gpg [836 B]    
Hit:8 https://download.docker.com/linux/ubuntu focal InRelease                 
Get:9 http://repo.yandex.ru/clickhouse/deb/stable main/ Packages [152 kB]
Hit:10 https://debian.neo4j.com stable InRelease       
Fetched 263 kB in 0s (536 kB/s)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
All packages are up to date.
root@host:~#

Nakonec můžeme nainstalovat ClickHouse. Po zobrazení výzvy zadejte heslo.

root@host:~#  apt install -y clickhouse-server clickhouse-client
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  clickhouse-common-static
Suggested packages:
  clickhouse-common-static-dbg
The following NEW packages will be installed:
  clickhouse-client clickhouse-common-static clickhouse-server
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 119 MB of archives.
After this operation, 401 MB of additional disk space will be used.
...                                           
Preconfiguring packages ...
Selecting previously unselected package clickhouse-common-static.
(Reading database ... 164995 files and directories currently installed.)
Preparing to unpack .../clickhouse-common-static_20.12.5.14_amd64.deb ...
Unpacking clickhouse-common-static (20.12.5.14) ...
Selecting previously unselected package clickhouse-client.
Preparing to unpack .../clickhouse-client_20.12.5.14_all.deb ...
Unpacking clickhouse-client (20.12.5.14) ...
Selecting previously unselected package clickhouse-server.
Preparing to unpack .../clickhouse-server_20.12.5.14_all.deb ...
Unpacking clickhouse-server (20.12.5.14) ...
Setting up clickhouse-common-static (20.12.5.14) ...
Setting up clickhouse-server (20.12.5.14) ...
ClickHouse init script has migrated to systemd. Please manually stop old server 
and restart the service:  killall clickhouse-server && sleep 5 &&  servi
ce clickhouse-server restart
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.se
rvice → /etc/systemd/system/clickhouse-server.service.
Copying ClickHouse binary to /usr/bin/clickhouse.new
/usr/bin/clickhouse already exists, will rename existing binary to /usr/bin/clic
khouse.old and put the new binary in place
Renaming /usr/bin/clickhouse.new to /usr/bin/clickhouse.
Symlink /usr/bin/clickhouse-server already exists but it points to /clickhouse. 
Will replace the old symlink to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-server to /usr/bin/clickhouse.
Symlink /usr/bin/clickhouse-client already exists but it points to /clickhouse. 
Will replace the old symlink to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-client to /usr/bin/clickhouse.
Symlink /usr/bin/clickhouse-local already exists but it points to /clickhouse. W
ill replace the old symlink to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-local to /usr/bin/clickhouse.
Symlink /usr/bin/clickhouse-benchmark already exists but it points to /clickhous
e. Will replace the old symlink to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-benchmark to /usr/bin/clickhouse.
Symlink /usr/bin/clickhouse-copier already exists but it points to /clickhouse. 
Will replace the old symlink to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-copier to /usr/bin/clickhouse.
Symlink /usr/bin/clickhouse-obfuscator already exists but it points to /clickhou
se. Will replace the old symlink to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-obfuscator to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-git-import to /usr/bin/clickhouse.
Symlink /usr/bin/clickhouse-compressor already exists but it points to /clickhou
se. Will replace the old symlink to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-compressor to /usr/bin/clickhouse.
Symlink /usr/bin/clickhouse-format already exists but it points to /clickhouse. 
Will replace the old symlink to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-format to /usr/bin/clickhouse.
Symlink /usr/bin/clickhouse-extract-from-config already exists but it points to 
/clickhouse. Will replace the old symlink to /usr/bin/clickhouse.
Creating symlink /usr/bin/clickhouse-extract-from-config to /usr/bin/clickhouse.
Creating clickhouse group if it does not exist.
 groupadd -r clickhouse
Creating clickhouse user if it does not exist.
 useradd -r --shell /bin/false --home-dir /nonexistent -g clickhouse clickhouse
Will set ulimits for clickhouse user in /etc/security/limits.d/clickhouse.conf.
Creating config directory /etc/clickhouse-server/config.d that is used for tweak
s of main server configuration.
Creating config directory /etc/clickhouse-server/users.d that is used for tweaks
 of users configuration.
Config file /etc/clickhouse-server/config.xml already exists, will keep it and e
xtract path info from it.
/etc/clickhouse-server/config.xml has /var/lib/clickhouse/ as data path.
/etc/clickhouse-server/config.xml has /var/log/clickhouse-server/ as log path.
Users config file /etc/clickhouse-server/users.xml already exists, will keep it 
and extract users info from it.
 chown --recursive clickhouse:clickhouse '/etc/clickhouse-server'
Creating log directory /var/log/clickhouse-server/.
Creating data directory /var/lib/clickhouse/.
Creating pid directory /var/run/clickhouse-server.
 chown --recursive clickhouse:clickhouse '/var/log/clickhouse-server/'
 chown --recursive clickhouse:clickhouse '/var/run/clickhouse-server'
 chown clickhouse:clickhouse '/var/lib/clickhouse/'
Password for default user is already specified. To remind or reset, see /etc/cli
ckhouse-server/users.xml and /etc/clickhouse-server/users.d.
Setting capabilities for clickhouse binary. This is optional.
 command -v setcap >/dev/null && echo > /tmp/test_setcap.sh && chmod a+x /tmp/te
st_setcap.sh && /tmp/test_setcap.sh && setcap 'cap_net_admin,cap_ipc_lock,cap_sy
s_nice+ep' /tmp/test_setcap.sh && /tmp/test_setcap.sh && rm /tmp/test_setcap.sh 
&& setcap 'cap_net_admin,cap_ipc_lock,cap_sys_nice+ep' /usr/bin/clickhouse || ec
ho "Cannot set 'net_admin' or 'ipc_lock' or 'sys_nice' capability for clickhouse
 binary. This is optional. Taskstats accounting will be disabled. To enable task
stats accounting you may add the required capability later manually."

ClickHouse has been successfully installed.

Start clickhouse-server with:
 clickhouse start

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

Setting up clickhouse-client (20.12.5.14) ...
Processing triggers for systemd (245.4-4ubuntu3.3) ...
root@host:~# 

Spusťte službu ClickHouse

Nyní, když jsme nainstalovali ClickHouse, spusťte jej na pozadí.

root@host:~#  service clickhouse-server start
root@host:~# 

Ověřit stav

V tomto kroku jednoduše zkontrolujeme, zda vše funguje podle očekávání.

root@host:~#  service clickhouse-server status
● clickhouse-server.service - ClickHouse Server (analytic DBMS for big data)
     Loaded: loaded (/etc/systemd/system/clickhouse-server.service; enabled; ve>
     Active: active (running) since Wed 2020-12-30 22:08:26 +03; 25s ago
   Main PID: 5553 (clickhouse-serv)
      Tasks: 48 (limit: 9489)
     Memory: 45.8M
     CGroup: /system.slice/clickhouse-server.service
             └─5553 /usr/bin/clickhouse-server --config=/etc/clickhouse-server/>

сне 30 22:08:26 host clickhouse-server[5553]: Include not found: clickhouse_com>
сне 30 22:08:26 host clickhouse-server[5553]: Logging trace to /var/log/clickho>
сне 30 22:08:26 host clickhouse-server[5553]: Logging errors to /var/log/clickh>
сне 30 22:08:26 host clickhouse-server[5553]: Processing configuration file '/e>
сне 30 22:08:26 host clickhouse-server[5553]: Include not found: networks
сне 30 22:08:26 host clickhouse-server[5553]: Saved preprocessed configuration >
сне 30 22:08:28 host clickhouse-server[5553]: Processing configuration file '/e>
сне 30 22:08:28 host clickhouse-server[5553]: Include not found: clickhouse_rem>
сне 30 22:08:28 host clickhouse-server[5553]: Include not found: clickhouse_com>
сне 30 22:08:28 host clickhouse-server[5553]: Saved preprocessed configuration >
lines 1-19/19 (END)

Řádky níže jsou ty, kterým musíme věnovat velkou pozornost.

   Loaded: loaded (/etc/systemd/system/clickhouse-server.service; enabled; ve>
     Active: active (running) since Wed 2020-12-30 22:08:26 +03; 25s ago

Nakonfigurujte bránu firewall

Pokud nepoužíváte bránu firewall, tento krok přeskočte. Pokud se plánujete připojit vzdáleně a máte povolenou bránu firewall, je tento krok nezbytný. Otevřete a upravte konfigurační soubor a odkomentujte řádek níže.

<!-- <listen_host>0.0.0.0</listen_host> →

Po dokončení úprav uložte soubor pomocí Ctrl+S a Ctrl+X a poté restartujte službu ClickHouse.

root@host:~#  service clickhouse-server restart
root@host:~# 

Otevřít porty

Dále otevřete port 8123 ve bráně firewall, abyste umožnili přístup pro vaši IP adresu.

ufw allow from YOUR_IP_SERVER/32 to any port 8123

Poté otevřete port 9000 pro klienta clickhouse IP adresa.

 root@host:~#  ufw allow from 192.168.13.1/32 to any port 8123
Rules updated
root@host:~# 
root@host:~#  ufw allow from 192.168.13.1/32 to any port 9000
Rules updated
root@host:~#  

Ověřte připojení

Chcete-li zkontrolovat, zda vše funguje při vzdáleném připojení, použijte následující dotaz.

clickhouse-client --host 192.168.13.1 --password
root@host:~# clickhouse-client --host 192.168.13.1 --password
Password for user (default):
Connecting to 192.168.13.1:9000 as user default.
Connected to ClickHouse server version 20.12.5 revision 54442.

host :)

Výuka základních příkazů a interakcí

V ClickHouse můžeme vytvářet a rušit databáze pomocí upravené syntaxe SQL. Podívejme se na příklady níže. Nejprve se připojíme ke ClickHouse.

root@host:~# clickhouse-client
ClickHouse client version 20.12.5.14 (official build).
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 20.12.5 revision 54442.

host :)  

Vytvořit databázi

Jakmile jsme v příkazovém řádku ClickHouse, vytvoříme databázi s názvem liquidweb pomocí následující syntaxe.

host :) CREATE DATABASE liquidweb;

CREATE DATABASE liquidweb

Query id: 9169dbaa-402e-4d37-828f-5fde43d4a91d

Ok.

0 rows in set. Elapsed: 0.004 sec. 

host :) 

V ClickHouse je tabulka téměř stejná jako v jiných databázích se sadou souvisejících dat ve strukturovaném formátu. Můžeme specifikovat sloupce a jejich typy, přidávat řádky a provádět různé druhy dotazů proti DB.

Vytvořit tabulku

Než vytvoříme tabulku, je důležité znát a rozumět typům sloupců, které jsou k dispozici k použití. Použitelné jsou následující typy sloupců:

  • UInt64 — Tato tabulka se používá k ukládání celých čísel v rozsahu od 0 do 18446744073709551615.
  • Float64 — Každá tabulka, která používá Float64, může ukládat čísla s plovoucí desetinnou čárkou, jako je 10,5, 18754,067 atd.
  • Řetězec — Zde tabulka řetězců nahrazuje VARCHAR, BLOB, CLOB a další typy z různých DBMS
  • Datum — Tato tabulka se používá k ukládání dat ve formátu RRRR-MM-DD.
  • Datum a čas — Zde se tabulka DateTime používá k ukládání dat a časů v přesnějším formátu YYYY-MM-DD HH:MM:SS

Datové struktury

ClickHouse definuje strukturu podkladových dat tím, že popisuje přesná data, schopnost dotazovat se na tabulku, její režimy souběžného přístupu k tabulce a podporu indexů. ClickHouse má různé schopnosti, které jsou vhodné pro různé podmínky použití.

MergeTree

Nejpoužívanějším mechanismem je operace tabulkového enginu zvaná MergeTree . Tato funkce je určena pro vkládání velkého množství dat do tabulky. Důrazně se doporučuje pro použití v produkčních databázích kvůli jeho optimalizované podpoře pro vkládání velkého množství aktiv v reálném čase, stejně jako jeho spolehlivosti a podpoře dotazů.

Vyberte databázi

Pojďme k dalšímu procvičování. Nejprve si vybereme databázi, ve které vytvoříme tabulku.

host :) USE liquidweb;

USE liquidweb

Query id: aba15bcb-224b-426d-9f74-350a88346115

Ok.

0 rows in set. Elapsed: 0.001 sec. 

host :) 

Vytvořit tabulku

Dále vytvoříme tabulku s názvem kolegové .

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

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

Query id: 08223a2f-d365-43cb-8627-d22674d1c47c

Ok.

0 rows in set. Elapsed: 0.004 sec. 

host :) 

Pojďme se podívat, jaké hodnoty jsme přidali.

  • id - Toto je sloupec primárního klíče. Každý řádek musí mít jedinečný identifikátor.
  • jméno – Sloupec s hodnotou řetězce.
  • url – Sloupec s hodnotou řetězce, který obsahuje odkaz na profil.
  • vytvořeno - Datum, kdy se zaměstnanec objevil v systému.

Po definování sloupců v tabulce určíme MergeTree mechanismus pro uložení stolu. Dále určíme sloupce a poté definujeme sloupce na úrovni tabulky.

  • PRIMÁRNÍ KLÍČ - Určuje sloupec primárního klíče.
  • OBJEDNÁVKA - Uložené hodnoty tabulky jsou seřazeny podle sloupce id.

Přidat data

Nyní můžeme pracovat s tabulkou. Pojďme přidat pár údajů k kolegům tabulka.

host :) INSERT INTO colleagues VALUES (1, 'margaret', 'http://1.com', '2021-01-01 00:01:01');

INSERT INTO colleagues VALUES

Query id: 42dbde52-6d7e-4849-ac5e-280590f3232d

Ok.

1 rows in set. Elapsed: 0.002 sec. 

host :) 

Pojďme přidat další data.

host :) INSERT INTO colleagues VALUES (2, 'john', 'http://2.com', '2021-01-01 00:01:01');

INSERT INTO colleagues VALUES

Query id: a9b34f78-2caa-4b41-bd4e-91bf8049a04b

Ok.

1 rows in set. Elapsed: 0.001 sec. 

host :)
host :) INSERT INTO colleagues VALUES (3, 'kingsman', 'http://3.com', '2021-01-01 00:01:01');

INSERT INTO colleagues VALUES

Query id: df5133c1-b404-4569-8123-f0728c172c87

Ok.

1 rows in set. Elapsed: 0.003 sec. 

host :) 
 host :) INSERT INTO colleagues VALUES (4, 'tor', 'http://4.com', '2021-01-01 00:01:01');

INSERT INTO colleagues VALUES

Query id: 14f56b86-fae7-4af2-b506-18c351b92853

Ok.

1 rows in set. Elapsed: 0.001 sec. 

host :)  

Přidat sloupec

Zatímco jsme přidali nějaké hodnoty, uvědomili jsme si, že jsme zapomněli přidat další sloupec, takže jej musíme přidat níže.

host :) ALTER TABLE colleagues ADD COLUMN location String;

ALTER TABLE colleagues
    ADD COLUMN `location` String


Query id: 002900f4-9fd9-4302-a10f-6aa5b818f9ae

Ok.

0 rows in set. Elapsed: 0.005 sec. 

host :)

Upravit data

Nyní musíme nějak změnit stará data. Ve verzi 19.13 ClickHouse kvůli své implementaci nepodporuje aktualizaci a mazání jednotlivých řádků. ClickHouse však podporuje hromadné aktualizace a mazání a má také vlastní syntaxi pro tyto operace.

Nyní aktualizujeme naše řádky.

host :) ALTER TABLE colleagues UPDATE url ='http://1.com' WHERE id < 15;

ALTER TABLE colleagues
    UPDATE url = 'http://1.com' WHERE id < 15


Query id: 6fc6620e-fd90-43aa-8d7f-8a34cfb73650

Ok.

0 rows in set. Elapsed: 0.004 sec. 

host :)

Po WHERE , nastavíme parametry filtru a můžeme také smazat nepotřebné parametry.

host :) ALTER TABLE colleagues  DELETE WHERE id < 2;

ALTER TABLE colleagues
    DELETE WHERE id < 2


Query id: 354e27fc-70c9-480b-bb1d-067591924c6e

Ok.

0 rows in set. Elapsed: 0.005 sec. 

host :) 

Odebrat sloupec

Chcete-li odebrat sloupce z tabulky, proveďte následující.

host :) ALTER TABLE colleagues DROP COLUMN location;

ALTER TABLE colleagues
    DROP COLUMN location


Query id: da361478-0619-4c31-8422-f59ee14a57d7

Ok.

0 rows in set. Elapsed: 0.008 sec. 

host :) 

Načítání dat prostřednictvím dotazů

Dále přejdeme k ukázce získávání dat pomocí dotazů. ClickHouse zde používá syntaxi SQL se svými doplňky. Pokusme se shromáždit nějaké základní informace.

host :) SELECT url, name FROM colleagues WHERE url = 'http://1.com' LIMIT 1;

SELECT
    url,
    name
FROM colleagues WHERE url = 'http://1.com'
LIMIT 1

Query id: 8a5cbf9a-f187-440c-9a60-2d23029b4bd1

┌─url──────────┬─name─┐
│ http://1.com │ john │
└──────────────┴──────┘

1 rows in set. Elapsed: 0.003 sec. 

host :) 
  • VYBRAT - Vyberte několik parametrů.
  • OD - Určete, ve které tabulce budeme přijímat hodnoty.
  • KDE – Nastavte parametry a filtry podle toho, jakou hodnotu a kolik.

Můžeme také použít další parametry vyhledávání, například:

  • počet – Vrátí počet řádků odpovídajících podmínkám.
  • součet - Vrátí součet vybraných hodnot.
  • průměr - Vrátí průměr vybraných položek.
  • unikátní – Vraťte přibližný počet shodných jednotlivých řádků.
  • topK - Vrátí pole nejčastějších hodnot konkrétního sloupce pomocí algoritmu.

Vypustit tabulky a databáze

Dále přejdeme k odstranění tabulek a databází. Nejprve smažeme tabulku.

host :) DROP TABLE colleagues;

DROP TABLE colleagues

Query id: 21048fe4-d379-48ac-b9a7-71f0b3fe93e1

Ok.

0 rows in set. Elapsed: 0.001 sec. 

host :) 

Nyní smažte databázi.

host :) DROP DATABASE liquidweb;

DROP DATABASE liquidweb

Query id: 4ad9a51a-f89d-4be5-be9c-92b8cb38614b

Ok.

0 rows in set. Elapsed: 0.001 sec. 

host :) 

Pro ukončení databáze zadejte standardní hodnotu 'exit'.

host :) exit
Bye.
root@host:~# 

Vytvořit uživatele

Nyní, když jsme pokryli všechny základní funkce, vytvoříme několik uživatelů databáze. Konfigurační soubor ClickHouse lze nalézt v následující cestě /etc/clickhouse-client/config.xml. Přejděte na tento soubor, otevřete jej pomocí vim nebo nano a zadejte hodnoty v následujícím pořadí.

<config>    <user>username</user>    <password>password</password>    <secure>False</secure></config>

Pro úpravu souboru použijeme nano editor.

root@host:~#  nano /etc/clickhouse-client/config.xml
root@host:~# 

Zadejte požadované informace a poté uložte změny pomocí Ctrl+S a Ctrl+X klíče

Připojit k ClickHouse

Nakonec pro připojení ke ClickHouse zadejte do terminálu následující příkaz.

root@host:~# clickhouse-client -u margaret --password
ClickHouse client version 20.12.5.14 (official build).
Password for user (margaret): 
Connecting to localhost:9440 as user margaret.
Connected to ClickHouse server version 20.12.5 revision 54442.

host :) 

Závěr

V tomto tutoriálu jsme objevili mnoho aspektů ClickHouse. Zjistili jsme, jak to funguje, kdy může být použito a za jakých okolností je užitečné. Identifikovali jsme, jak přidat klíč, úložiště a poté nainstalovat software ClickHouse. Podobně jsme potom nastavili a nakonfigurovali firewall tak, aby umožňoval přístup. Dále jsme vytvářeli databáze a tabulky, přidávali sloupce a data a následně je aktualizovali a smazali. Nakonec jsme si ukázali, jak vytvořit uživatele v konfiguračním souboru.

Jsme hrdí na to, že jsme nejužitečnějšími lidmi v hostingu™! Naše týmy podpory jsou plné zkušených linuxových techniků a talentovaných systémových administrátorů, kteří důvěrně znají různé technologie webhostingu, včetně těch, které jsou popsány v tomto článku.

Pokud máte nějaké dotazy týkající se tohoto článku, vždy k dispozici pro poskytnutí informací na jakékoli dotazy související s tímto článkem, 24 hodin denně, 7 dní v týdnu, 365 dní v roce.

Pokud jste plně spravovaný server VPS, vyhrazený pro cloud, privátní cloud VMWare, soukromý nadřazený server, spravované cloudové servery nebo vlastníte vyhrazený server a je vám nepříjemné provádět kterýkoli z uvedených kroků, můžete nás kontaktovat telefonicky na čísle @800.580.4985, prostřednictvím chatu nebo lístku podpory, který vám s tímto procesem pomůže.


  1. Použití TUPLES k vložení více než 1000 položek do klauzule SQL IN

  2. Automatické mazání zapomenutých transakcí v MS SQL Server

  3. Jak změnit řazení na úrovni serveru spuštěné instance SQL Server

  4. Rozdíl mezi datem a časovým razítkem na serveru SQL?