2013-04-10 11 views
7

mam skonfigurowane trzy oddzielne katalogi danych w pliku cassandra.yaml jak podano poniżej:W jaki sposób kasjer dzieli dane obszaru kluczy, gdy skonfigurowanych jest wiele katalogów?

 
data_file_directories: 
    - E:/Cassandra/data/var/lib/cassandra/data 
    - K:/Cassandra/data/var/lib/cassandra/data 

gdy tworzę KEYSPACE i wstawić dane miejsce, ale mój klucz utworzonych w obu dwóch katalogów i danych został rozproszony. co chcę wiedzieć, to jak Kasandra dzieli dane między wieloma katalogami ?. I jaka jest za tym zasada?

Odpowiedz

9

Używasz funkcji JBOD dla Cassandra, gdy dodajesz wiele wpisów w katalogu katalog_główny_danych. Dane są równomiernie rozłożone na skonfigurowanych napędach proporcjonalnie do ich dostępnej przestrzeni.

Umożliwia to także skorzystanie z ustawienia disk_failure_policy. Możesz przeczytać o szczegółach tutaj: http://www.datastax.com/dev/blog/handling-disk-failures-in-cassandra-1-2

Krótko mówiąc, możesz skonfigurować Cassandrę tak, aby działała dalej, robiąc co może, jeśli dysk się zapełni lub całkowicie się nie powiedzie. Ma to zalety w stosunku do RAID0 (gdzie faktycznie miałbyś taką samą pojemność jak JBOD), ponieważ nie musisz wymieniać całego zestawu danych z kopii zapasowej (lub pełnej naprawy), ale po prostu wykonaj naprawę brakujących danych. Z drugiej strony, RAID0 zapewnia wyższą przepustowość (w zależności od tego, jak dobrze wiesz, jak dostroić macierze RAID, aby dopasować system plików i geometrię dysku).

Jeśli dysponujesz zasobami do konfiguracji RAID odpornej na uszkodzenia/bardziej wydajnej (na przykład RAID10), możesz po prostu użyć pojedynczego katalogu dla uproszczenia. Większość wdrożeń zaczyna odchylać się w kierunku trasy gęstości, używając JBOD zamiast tolerancji na poziomie systemu.

można przeczytać na temat procesu myślowego za rozwój tej kwestii tutaj: https://issues.apache.org/jira/browse/CASSANDRA-4292

+0

Ta odpowiedź powinna stać się częścią dokumentacji Cassandra – stacksonstacks

0

                Niektórzy co jestem w stanie odgadnąć, jak KEYSPACE jest podzielona między wielu katalogów danych. Oparte na maksymalnej dostępnej przestrzeni i obciążeniu katalogów, SSTables z tej samej rodziny kolumn zapisanych w różnych katalogach danych.

Powiązane problemy