Apache Cassandra może być wysoce skalowalną, wysokowydajną, rozproszoną bazą danych przeznaczoną do obsługi dużych ilości wiedzy na wielu serwerach towarowych, zapewniając wysoką dostępność bez pojedynczego punktu awarii. jest to rodzaj bazy danych NoSQL. pozwalają nam najpierw zrozumieć, co robi baza danych NoSQL.

Baza danych NoSQLDatabase

Baza danych NoSQL (czasami nazywana nie tylko SQL) może być bazą danych, która daje mechanizm do przechowywania i pobierania danych poza relacjami tabelarycznymi wykorzystywanymi w relacyjnych bazach danych. Te bazy danych są bez schematów, obsługują łatwą replikację, mają proste API, ostatecznie spójne i mogą obsługiwać ogromne ilości wiedzy.

Podstawowym celem bazy danych NoSQL jest posiadanie

prostota projektowania,

skalowanie poziome, oraz

dokładniejszą kontrolę nad dostępnością.

Bazy danych NoSql wykorzystują różne struktury danych w porównaniu z relacyjnymi bazami danych. Dzięki temu niektóre operacje w NoSQL są szybsze. Przydatność danej bazy danych NoSQL zależy od sprawy, którą musi ona rozwiązać.

NoSQL vs. elektroniczna baza danych

Poniższa tabela zawiera listę punktów, które odróżniają elektroniczną bazę danych od bazy danych NoSQL.

Relatywna baza danych NoSql Baza danych

Obsługuje potężny język poleceń. Obsługuje bardzo prosty język poleceń.

Ma twardy i szybki schemat. Nie ma stałego schematu.

Podąża za ACID (Atomowość, Spójność, Izolacja i Trwałość). Jest tylko “ostatecznie spójny”.

Obsługuje transakcje. nie obsługuje transakcji.

Oprócz Cassandry, mamy kolejne bazy danych NoSQL, które są dość popularne –

Apache HBase – HBase jest otwartoźródłową, nierelacyjną, rozproszoną bazą danych modelowaną na wzór BigTable’a Google’a i napisaną w języku Java. Została stworzona jako dzielnica projektu Apache Hadoop i działa na szczycie HDFS, dostarczając możliwości podobne do BigTable’a dla Hadoopa.

MongoDB – MongoDB może być wieloplatformowym systemem bazodanowym zorientowanym na dokumenty, który unika korzystania z normalnej, tabelarycznej elektronicznej struktury bazy danych na rzecz dokumentów podobnych do JSON z dynamicznymi schematami, dzięki czemu mieszanie wiedzy w pewnych rodzajach aplikacji jest łatwiejsze i szybsze.

Czym jest Apache Cassandra?

Apache Cassandra jest otwartym, rozproszonym i zdecentralizowanym systemem przechowywania danych (bazy danych), przeznaczonym do zarządzania bardzo dużymi ilościami strukturyzowanych danych otwartych na całej planecie. Zapewnia wysoce dostępną usługę bez pojedynczego punktu awarii.

Poniżej wymieniono kilka znaczących punktów Apache Cassandra –

Jest skalowalny, tolerancyjny na błędy i spójny.

Jest to baza danych zorientowana na kolumny.

Jej dystrybucja jest oparta na Amazon’s Dynamo i modelu danych na Bigtable Google.

Stworzony na Facebooku, znacznie różni się od elektronicznych systemów zarządzania bazami danych.

Cassandra implementuje model replikacji w stylu Dynamo bez pojedynczego punktu awarii, ale dodaje bardziej wydajny model danych z “rodziny kolumn”.

Cassandra jest używana przez wiele najważniejszych firm, takich jak Facebook, Twitter, Cisco, Rackspace, ebay, Twitter, Netflix i wiele innych.

Cechy charakterystyczne Cassandry

Cassandra stała się tak popularna ze względu na swoje wyjątkowe właściwości techniczne. Poniżej przedstawiamy kilka cech charakterystycznych Cassandry:

Elastyczna skalowalność – Cassandra jest bardzo skalowalna; pozwala na zainstalowanie większej ilości sprzętu, aby pomieścić więcej klientów i więcej danych zgodnie z wymaganiami.

Zawsze na architekturze – Cassandra nie ma jednego punktu awarii i jest stale dostępna dla aplikacji o krytycznym znaczeniu dla biznesu, które nie mogą sobie pozwolić na awarię.

Szybka wydajność w skali liniowej – Cassandra jest liniowo skalowalna, tzn. zwiększa Twoją przepustowość w miarę zwiększania ilości węzłów w klastrze. Dlatego też utrzymuje szybki czas reakcji.

Elastyczne przechowywanie danych – Cassandra obsługuje wszystkie możliwe formaty danych, w tym: strukturyzowane, półstrukturalne i niestrukturalne. Może dynamicznie dostosowywać się do zmian w strukturze danych zgodnie z Twoimi potrzebami.

Łatwa dystrybucja danych – Cassandra zapewnia elastyczność w dystrybucji danych tam, gdzie chcesz, poprzez powielanie danych w wielu centrach danych.

Obsługa transakcji – Cassandra obsługuje takie właściwości jak Atomicity, Consistency, Isolation i wytrzymałość (ACID).

Szybkie pisanie – Cassandra została zaprojektowana do pracy na tanim sprzęcie towarowym. Wykonuje błyskawicznie szybkie zapisy i może przechowywać wiele terabajtów wiedzy, bez utraty wydajności odczytu.