První kroky s Cassandrou

Obsah
Cassandra je databáze NoSQL výkonný a škálovatelný. Je to open source a jeho architektura je navržena jako distribuovaný systém, kde jsou v něm všechny uzly stejné, což umožňuje distribuci dat mezi všechny uzly v klastru.
Skladování v Cassandra je definován jako klíč / hodnota kde klíč lze namapovat na jednu nebo více hodnot. Je Databáze orientované na řádkové záznamy, kde každý řádek je identifikován svým klíčem a zvláštností tohoto systému je, že řádek může být uložen ve více než jednom uzlu.
Než přistoupíte k instalaci Cassandra v našem systému musíme vědět něco o architektuře tohoto Databáze, tímto způsobem budeme vědět, co máme a čeho můžeme dosáhnout.
Když mluvíme o replikaci informací, jednou z prvních otázek, které si klademe, je: Kolik kopií potřebujeme? Na to v Cassandře není snadné odpovědět, ale musíme mít na paměti, že tento faktor udává počet uzlů, které jsou uloženy ve stejném řádku.
Faktor replikace 2 například zaručuje, že v clusteru budou dvě kopie informací o uzlech. Výběr hodnoty dvě pro replikační faktor je vhodný k pokrytí selhání v uzlu ve vývojovém prostředí a může být minimem pro produkční prostředí, protože pokud jeden uzel klesne, druhý bude zpracovávat všechny požadavky, takže je to něco, na co musíme myslet před implementací pečlivě.
Klíčový prostorCassandra nám umožňuje seskupit informace do takzvaného prostory pro klíče, kde můžeme říci, že tyto prostory pro klíče jsou to kontejnery pro informace o aplikaci. Cluster má však jeden klíčový prostor na aplikaci Cassandra použijte tyto prostory pro klíče pro zpracování replikace.
Sloupová rodinaPo definování našeho klíčový prostor, uvnitř toho máme něco nazvaného rodina sloupců, jedná se o kontejnery podobné, ale pro kolekci řádků. Každý řádek je uspořádanou kolekcí sloupců a můžeme provést analogii s ohledem na relační databáze, kde rodina sloupců jsou poněkud podobné tabulkám.
Strategie replikacev Cassandra Existují dvě strategie replikace informací, jedna z nich a ta, kterou jsme již řešili, je jednoduchá strategie nebo SimpleStrategy který je zodpovědný za kopírování informací do dalšího uzlu, dokud není splněn definovaný replikační faktor. Druhá strategie se nazývá NetworkTopologyStrategy, kde je to nejlepší možnost, pokud chceme distribuovat informace mezi více datových center.
Protokol používaný Cassandra pro sdílení umístění uzlů a jejich informací v klastru se nazývá Drby. Kde tyto uzly neustále „mumlají“ a vyměňují si informace až se 3 uzly v klastru.
Tento protokol, stejně jako ostatní, má svá pravidla pro odesílání požadavků do jiných uzlů, kde pro něj vidíme tři kroky a každý uzel tyto kroky vždy opakuje:
1- Mumlání do náhodného aktivního uzlu.
2- Zahajte mumlání směrem k náhodnému uzlu směrem dolů.
3- Tento krok je volitelný a definuje, že pokud uzel vybraný v prvním kroku není počátečním uzlem, zamumlá na jiný náhodný počáteční uzel.
Ale přesunout informace a provést komunikaci mezi uzly Cassandra použijte komponentu s názvem PráskačPodívejme se, co máte na mysli.
V zásadě je tato komponenta zodpovědná za správu pohybu informací mezi uzly, přičemž jiné uzly vyžadují dotazy a replikaci na základě různých metrik. Tato konfigurace je stejná pro všechny uzly v clusteru, ale může se lišit v jejím typu, podívejme se, které máme k dispozici:
SimpleSnitchPoužívá se v jednoduchých nasazeních datových center a práskač takto nakonfigurovaný nepoužívá žádné informace z datového centra. Jeho chování je jednoduché a je najít další uzel.
Dynamické snitchingTato konfigurace monitoruje výkon replik a vybírá tu nejlepší na základě jednoduché metriky, která penalizuje dlouhé doby odezvy a vyhýbá se uzlům, které komprimují vaše informace.
Rack InferringSnitchTato konfigurace využívá IP adresu k určení umístění uzlů, kde poslední část IP identifikuje uzel, druhá rozvaděče a třetí datová centra.
PropertyFileSnitchTo umožňuje definici topologie klastru v souboru vlastností, obecně se tato konfigurace používá, pokud Rack InferringSnitch Nepoužitelný.
GossipingPropertyFileSnitchPro počáteční konfiguraci používá soubor vlastností a pokračuje v šumění k odesílání informací do jiných uzlů.
Instalace Cassandra Uděláme to v týmu s Windows 8, ve kterém musíme předtím splnit určité požadavky, podívejme se, co potřebujeme:
1- Musíme mít alespoň Java 7 nainstalován v našem systému, pokud jej nemáme, můžeme si nejnovější verzi stáhnout v následujícím odkazu.
2- Navíc potřebujeme Redistribuovatelný balíček Microsoft Visual C ++ 2008 (x86).
3- Konečně připojení k internetu pro stažení balíčku DataStax.
Po přezkoumání našich požadavků přejdeme na stránku projektu a vyhledáme 32 nebo 64bitovou verzi, která vyhovuje našemu systému:

ZVĚTŠIT

Pokud se chceme podívat na dokumentaci připojení pro Cassandra S různými programovacími jazyky můžeme přejít na stránku dolů a zjistit, co pro to samé potřebujeme. Po stažení nainstalujeme jako jakoukoli aplikaci pro Windows. Kde je důležité zmínit, že po této instalaci Cassandra ve výchozím nastavení vytvoří shluk testů.
S instalací je v našem systému nainstalováno několik nástrojů, jedním z nich je webové rozhraní Cassandra volání OpsCenter, do kterého můžeme zadat, pokud do prohlížeče vložíme následující adresu:
 http: // localhost: 8888 / opscenter / index.html
Toto rozhraní nám umožňuje dělat několik zajímavých věcí, ale práce s ním není nejoptimálnější Cassandra, ale pro účely tohoto tutoriálu je důležité to vědět, zjistit, co nám to nabízí, a mít tak výchozí bod, abyste mohli začít znát strukturu databáze.
První věc, kterou při vstupu do tohoto rozhraní najdeme, je část Přístrojová deska, kde můžeme vizualizovat různé metriky výkonu, jako je stav uzlu, kapacita úložiště nebo požadavky na zápis:

ZVĚTŠIT

V tomto rozhraní můžeme vytvořit nový klastr, proto přejdeme do pravé horní části a stiskneme Nový klastr, čímž se otevře následující obrazovka:

Zadáme požadované údaje a klikneme na stavět klastrKromě toho můžeme v rozevíracím seznamu přidat uzly rovnoměrně Clusterové akce, vpravo nahoře. V sekci Nedávej, můžeme vidět dostupné uzly a datová centra, stejně jako určité parametry, jako je stav, velikost dat a dokonce i generovaná upozornění:

ZVĚTŠIT

V sekci Činnosti Můžeme vidět seznam aktivit prováděných v klastru a také protokol událostí, což je docela užitečné, když jsme správci Databáze:

ZVĚTŠIT

Pak máme nejdůležitější část v našem webovém rozhraní, a to je DataZde můžeme definovat naše informační kontejnery známější jako prostory pro klíče a „tabulky“ popř sloupcové rodiny.
Chcete -li vytvořit a klíčový prostor, nejprve musíme jít do sekce Data a tam vyberte možnost Přidat, zadáme název, replikační strategii, u které vysvětlíme, že to může být jednoduchá nebo síťová topologie, a replikační faktor.

Ušetřili jsme a už bychom vytvořili naše klíčový prostor, jak si pamatujeme, tyto kontejnery mají klíčovou funkci Cassandra y je definovat replikační faktor. S definovaným naším kontejnerem přidáme a rodina sloupcůZa tímto účelem zadáme klíčový prostor a vybereme možnost Přidat. Zde zadáme název, typ sloupce a typ komparátoru.

S tímto jsme již vytvořili naše rodina sloupcůJak vidíme, je to velmi jednoduché, nicméně toto rozhraní nás v mnoha věcech omezuje a je pouze dobrým výchozím bodem pro začínající uživatele, kteří chtějí pochopit, jak struktura Cassandra a jak to zvládá klastry, uzly, prostory klíčů a rodiny sloupců.
Tímto jsme dokončili tento tutoriál, kde jsme viděli, jaká je architektura Cassandra, jeho protokol, komponenty a jeho instalace. Dozvěděli jsme se o struktuře prostřednictvím webového rozhraní, ale tímto jsme se dotkli pouze špičky ledovce, v budoucích tutoriálech vstoupíme plně s CQL a jak s ním profesionálně pracovat Cassandra.
wave wave wave wave wave