GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat Apache Cassandra v CentOS

1. Úvod

Cassandra je open-source systém pro správu distribuovaných databází se širokým úložištěm sloupců a databází NoSQL, který dokáže zpracovat obrovské množství dat na mnoha komoditních serverech bez jediného bodu selhání. Byl vytvořen Apache Software Foundation a je napsán v Javě. V tomto článku projdeme krok za krokem proces instalace Cassandry v CentOS 7 Linux.

2. Předpoklady

Všechny níže uvedené příkazy by měly být spouštěny jako root nebo sudo uživatel.

2.1. Nainstalujte Python 2.7

Na CentOS 7 je Python 2.7 předinstalovaný. Pokud z nějakého důvodu chybí, můžete jej nainstalovat pomocí následujícího příkazu:

# yum -y install python
# python --version
Python 2.7.5

2.2. Nainstalujte Java

Pomocí níže uvedených příkazů nainstalujte nejnovější verzi Java 8 a ověřte instalaci.

# yum install java-1.8.0-openjdk-devel
# java -version

Ukázkový výstup:

openjdk version "1.8.0_312"
OpenJDK Runtime Environment (build 1.8.0_312-b07)
OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode)

3. Jak nainstalovat Cassandru

Nejprve přidejte úložiště Cassandra. Chcete-li tak učinit, vytvořte soubor s názvem cassandra.repo pod /etc/yum.repos.d/ adresář:

# vi /etc/yum.repos.d/cassandra.repo

Přidejte do něj následující řádky:

[cassandra]
name=Apache Cassandra
baseurl=https://www.apache.org/dist/cassandra/redhat/40x/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://www.apache.org/dist/cassandra/KEYS

Stiskněte ESC a zadejte :wq uložte soubor a zavřete jej.

Ověřte, zda je přidáno úložiště Cassandra. Níže uvedený příkaz zajistí nainstalované a povolené úložiště:

# yum repolist

Po přidání úložiště spusťte následující příkaz k instalaci Cassandry do vašeho systému CentOS:

# yum -y install cassandra

Povolte a spusťte službu Cassandra:

# systemctl enable cassandra
cassandra.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig cassandra on
# systemctl start Cassandra

Zkontrolujte stav Cassandry:

# systemctl status cassandra

Pomocí níže uvedeného příkazu získáte podrobnosti o clusteru, jako je jeho stav, zatížení a ID:

# nodetool status

Ukázkový výstup:

Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address    Load       Tokens  Owns (effective)  Host ID                               Rack
UN  127.0.0.1  69.08 KiB  16      100.0%            bf2df7a9-54bc-41c9-8c6c-0b9322d10e71  rack1

Ve výstupu

  • OSN - Up &Normal
  • Adresa - IP adresa uzlu
  • Načíst - Po vyloučení veškerého obsahu v podadresáři snapshots množství dat systému souborů v datovém adresáři Cassandra. Každých 90 sekund bude jednou aktualizováno.
  • Tokeny - Počet tokenů, které byly přiřazeny k uzlu.
  • Vlastní - Kolik dat uzel vlastní; uzel může mít 33 % kruhu, ale zobrazí 100 %, pokud je replikační faktor 3.
  • ID hostitele – ID sítě hostitele
  • Skříň - Rack of the Node tam, kde existuje.

4. Cqlsh – CLI pro Cassandru

cqlsh je rozhraní příkazového řádku pro využití CQL pro spojení s Cassandrou (Cassandra Query Language). Je součástí každého balíčku Cassandra a lze jej nalézt vedle spustitelného souboru cassandra v bin/ adresář. Ovladač nativního protokolu Python se používá k implementaci cqlsh, který se připojuje k jedinému uzlu.

Chcete-li spustit Cqlsh, spusťte:

# cqlsh

Ukázkový výstup:

Connected to Test Cluster at 127.0.0.1:9042
[cqlsh 6.0.0 | Cassandra 4.0.1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cqlsh>
použijte HELP

5. CQL Ukázkové příkazy

5.1. Vytvořit klíčový prostor

V Cassandře klíčový prostor slouží jako datový kontejner, podobně jako databáze v systémech pro správu relačních databází (RDMBS)

cqlsh> CREATE KEYSPACE IF NOT EXISTS OsTechNix WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'datacenter1' : 3 };
cqlsh>

Zkontrolujte klíčová místa v systému pomocí níže uvedených příkazů.

cqlsh> SELECT * FROM system_schema.keyspaces;

Chcete-li zobrazit všechny klíčové prostory, spusťte:

cqlsh> desc keyspaces;

Budou uvedeny všechny klíčové prostory v clusteru:

ostechnix  system_auth         system_schema  system_views
system     system_distributed  system_traces  system_virtual_schema

5.2. Vytvořte tabulku a vložte ukázková data

Můžete použít CREATE TABLE příkaz definující datové typy pro každý sloupec, jak to obvykle děláme v RDBMS. Data jsou uložena v tabulkách CQL s řádky sloupců, podobně jako definice SQL.

Pro vytvoření tabulky musíte definovat 'primární klíč' a další datová pole. Pro vytvoření tabulky postupujte podle níže uvedeného příkladu.

cqlsh> CREATE TABLE ostechnix.sample_table ( id UUID PRIMARY KEY, name text, birthday timestamp, nationality text, weight text, height text );
cqlsh>

Použijte INSERT příkaz pro vložení jednoduchých dat do tabulky ostechnix.sample_table které vytvoříme výše. V tomto níže uvedeném příkladu jsou do tabulky přidány dva záznamy.

cqlsh> INSERT INTO ostechnix.sample_table (id, name, nationality) VALUES (5b6962dd-3f90-4c93-8f61-eabfa4a803e2, 'KARTHICK', 'Indian');
cqlsh> INSERT INTO ostechnix.sample_table (id, name, nationality, weight) VALUES (5b6962dd-3f90-4c93-8f61-eabfa4a804e3, 'MOHAN', 'Indian', '85');

5.3. Dotaz na tabulku

Použijte příkaz SELECT pro vrácení jednoho nebo více řádků z tabulky.

cqlsh> SELECT * FROM ostechnix.sample_table;

Zde * vrátí všechna data z tabulky.

cqlsh> SELECT * FROM ostechnix.sample_table WHERE weight = '85';

Ukázkový výstup:

InvalidRequest: Error from server: code=2200 [Invalid query] message="Cannot execute this query as it might involve data filtering and thus may have unpredictable performance. If you want to execute this query despite the performance unpredictability, use ALLOW FILTERING"
cqlsh>

Cassandra nespustí dotaz, který neurčuje hodnoty pro všechny sloupce z primárního klíče v 'where ' a vydá výše uvedené upozornění na chybu, aby bylo možné použít 'ALLOW FILTERING' .

Důvodem této chyby je, že Cassandra nebude schopna identifikovat uzel, který obsahuje požadované výsledky, pokud v WHERE nebude zahrnut úplný klíč oddílu. doložka. V důsledku toho bude muset Cassandra naskenovat celou datovou sadu na každém uzlu, aby se zaručila, že identifikuje relevantní data.

cqlsh> SELECT * FROM ostechnix.sample_table WHERE weight = '85' ALLOW FILTERING;

6. Shrnutí

V tomto článku jsme prošli instalačními postupy Cassandry a několika ukázkovými příkazy CQL. V nadcházejících článcích se podrobně ponoříme do operace Cassandra.


Cent OS
  1. Jak nainstalovat Apache Cassandra na CentOS 7

  2. Jak nainstalovat databázi Apache Cassandra NoSQL na CentOS 8

  3. Jak nainstalovat Apache Kafka na CentOS 8

  1. Jak nainstalovat Apache Cassandra na CentOS 8

  2. Jak nainstalovat Apache na CentOS 7

  3. Jak nainstalovat Apache Maven na CentOS 7

  1. Jak nainstalovat Apache Cassandra na CentOS 7

  2. Jak nainstalovat Apache na CentOS 8

  3. Jak nainstalovat Apache Maven na CentOS 8