cassandraPierwsze kroki z Cassandrą


Uwagi

Baza danych Apache Cassandra to właściwy wybór, gdy potrzebujesz skalowalności i wysokiej dostępności bez pogorszenia wydajności. Liniowa skalowalność i sprawdzona odporność na uszkodzenia w sprzęcie towarowym lub infrastrukturze chmurowej sprawiają, że jest to idealna platforma dla danych o znaczeniu krytycznym. Wsparcie Cassandry w zakresie replikacji w wielu centrach danych jest najlepsze w swojej klasie, zapewniając użytkownikom mniejsze opóźnienia i pewność, że możesz przetrwać awarie regionalne.

UDOWODNIONY

Cassandra jest używana w Constant Contact, CERN, Comcast, eBay, GitHub, GoDaddy, Hulu, Instagram, Intuit, Netflix, Reddit, The Weather Channel i ponad 1500 innych firm, które mają duże, aktywne zestawy danych.

ODPORNE NA USZKODZENIA

Dane są automatycznie replikowane do wielu węzłów w celu zapewnienia odporności na uszkodzenia. Obsługiwana jest replikacja w wielu centrach danych. Awarie węzłów można zastąpić bez przestojów.

WYDAJNOŚĆ

Cassandra konsekwentnie przewyższa popularne alternatywy NoSQL w testach porównawczych i rzeczywistych aplikacjach, głównie z powodu podstawowych wyborów architektonicznych.

ZDECENTRALIZOWANE

Nie ma pojedynczych punktów awarii. Brak wąskich gardeł w sieci. Każdy węzeł w klastrze jest identyczny.

SKALOWALNE

Niektóre z największych wdrożeń produkcyjnych to Apple, z ponad 75 000 węzłów przechowujących ponad 10 PB danych, Netflix (2500 węzłów, 420 TB, ponad 1 bilion żądań dziennie), chińska wyszukiwarka Easou (270 węzłów, 300 TB, ponad 800 milionów żądań dziennie) i eBay (ponad 100 węzłów, 250 TB).

TRWAŁY

Cassandra nadaje się do aplikacji, których nie stać na utratę danych, nawet gdy całe centrum danych ulegnie awarii.

MASZ KONTROLĘ

Wybierz replikację synchroniczną lub asynchroniczną dla każdej aktualizacji. Wysoce dostępne operacje asynchroniczne są zoptymalizowane dzięki takim funkcjom, jak Hinted Handoff i Read Repair.

ELASTYCZNY

Przepustowość odczytu i zapisu zwiększa się liniowo wraz z dodawaniem nowych maszyn, bez przestojów i przerw w działaniu aplikacji.

WSPARCIE PROFESJONALNIE

Umowy i usługi wsparcia Cassandra są dostępne od stron trzecich.

Wersje

Wersja Data wydania
1.1.12 19.11.2013
1.1.9 11.02.2013
1.2.12 28.11.2013
1.2.13 19.12.2013
1.2.15 19.02.2014
1.2.16 22.04.2014
1.2.17 2014-06-25
1.2.18 2014-07-04
1.2.19 14.11.2014
1.2.6 02.07.2013
1.2.8 2013-07-27
2.0.10 2014-08-12
2.0.11 17.10.2014
2.0.12 14.01.2015
2.0.13 2015-03-20
2.0.14 2015-04-01
2.0.15 01.06.2015
2.0.16 2015-07-08
2.0.17 2015-09-18
2.0.5 13.02.2014
2.0.6 02.04.2014
2.0.7 24.04.2014
2.0.8 2014-06-13
2.0.9 2014-07-22
2.1.11 2015-10-12
2.1.12 2015-10-22
2.1.2 2014-11-20
2.1.3 2015-03-03
2.1.4 2015-04-01
2.1.5 31.03.2015
2.1.6 2015-06-09
2.1.7 18.06.2015
2.1.8 2015-07-03
2.1.9 2015-09-03
2.2.0 2015-05-14
2.2.0-beta1 2015-05-19
2.2.0-rc1 2015-06-04
2.2.0-rc2 30.06.2015
2.2.1 25.08.2015
2.2.2 2015-09-25
2.2.3 2015-10-12
2.2.4 02.12.2015
3.0.0 26.01.2015
3.0.0-alfa 2015-07-29
3.0.0-alfa1 2015-07-18
3.0.0-beta1 2015-07-10
3.0.0-beta2 2015-09-04
3.0.0-rc1 2015-07-16
3.0.0-rc2 16.10.2015
3.0.1 04.12.2015
3.0.2 21.01.2016
3.0.3 24.11.2015
3.0.4 2016-02-05
3.0.5 02.04.2016
3.0.6 31.03.2016
3.0.7 2016-05-24
3.0.8 2016-05-25
3.2.819 2016-01-05
3.4.950 08.03.2016
3.6.1076 2016-05-02
3.8.1199 27.06.2016
3.10.3004 2016-08-10

( git log --tags --simplify-by-decoration --pretty="format:%ai %d" |egrep "\(tag: [0-9]"| awk -F" " '{ print $1 " " $5}'|awk -F"." '{print $1 "." $2 "." $3}'| awk -F" " '{print $2 " |" $1}'| sed 's/)//'|sed 's/,//'| sort -n|sort -u -t" " -k1,1 | awk '{print "|" $0 "|"}' to używając trochę awk: git log --tags --simplify-by-decoration --pretty="format:%ai %d" |egrep "\(tag: [0-9]"| awk -F" " '{ print $1 " " $5}'|awk -F"." '{print $1 "." $2 "." $3}'| awk -F" " '{print $2 " |" $1}'| sed 's/)//'|sed 's/,//'| sort -n|sort -u -t" " -k1,1 | awk '{print "|" $0 "|"}' )

Instalacja lub konfiguracja

Instalacja z jednym węzłem

  1. Wstępnie zainstaluj NodeJS, Python i Java
  2. Wybierz dokument instalacyjny na podstawie platformy http://docs.datastax.com/en/cassandra/3.x/cassandra/install/installTOC.html
  3. Pobierz pliki binarne Cassandra z http://cassandra.apache.org/download/
  4. Rozpakuj pobrany plik do <installation location>
  5. Uruchom cassandra za pomocą <installation location>/bin/cassandra LUB uruchom Cassandra jako usługę - [sudo] service cassandra start
  6. Sprawdź, czy Cassandra jest uruchomiona, używając <installation location>/bin/nodetool status .

Dawny:

  1. W środowisku Windows uruchom plik cassandra.bat , aby uruchomić serwer Cassandra i cqlsh.bat aby otworzyć terminal klienta CQL w celu wykonania poleceń CQL.

Istnieją dwa sposoby przeprowadzenia instalacji dla pojedynczego węzła .

Powinieneś mieć Oracle Java 8 lub OpenJDk 8 (preferowane dla wersji Cassandra> 3.0)

1. Instalowanie pakietu Debian (instaluje Cassandrę jako usługę)

Dodaj wersję Cassandra do repozytorium (zastąp 22x własną wersją, na przykład dla wersji 2.7 użyj 27x)

echo "deb-src http://www.apache.org/dist/cassandra/debian 22x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list
# Update the repository  
sudo apt-get update
# Then install it
sudo apt-get install cassandra cassandra-tools
 

Teraz Cassandra może być uruchomiona i zatrzymana za pomocą:

sudo service cassandra start
sudo service cassandra stop
 

Sprawdź status za pomocą:

nodetool status
 

Dzienniki i katalogi danych to odpowiednio /var/log/cassandra i /var/lib/cassandra .

2. Instalowanie dowolnej wersji Cassandry w postaci binarnego tarballa (instaluje Cassandrę jako samodzielny proces)

Pobierz wersję Datastax:

curl -L  http://downloads.datastax.com/community/dsc-cassandra-version_number-bin.tar.gz | tar xz
 

Lub binarne archiwum tar Apache Cassandra ręcznie (ze strony http://www.apache.org/dist/cassandra/)

Teraz usuń to:

tar -xvzf dsc-cassandra-version_number-bin.tar.gz
 

Zmień katalog, aby zainstalować lokalizację:

cd install_location
 

Uruchom Cassandrę, używając:

sudo sh ./bin/cassandra 
 

Przestań używać:

sudo kill -9 pid
 

Czek:

./bin/nodetool status
 

I viola, masz klaster testowy z jednym węzłem dla Cassandry. Więc po prostu użyj cqlsh w terminalu dla powłoki Cassandra.

Konfigurację Cassandry można wykonać w cassandra.yaml w folderze conf w install_location .

Instalacja wielu węzłów

Instalacja klastra Multi DC