Jestem w trakcie oceny najlepszego projektu naszej instalacji Cassandra.
W Internecie nie ma tak wielu informacji na temat korzystania z pierwszych dwóch poziomów dostępu, które zapewnia Cassandra - obszarów kluczy i rodzin kolumn .
Zastanawiam się, czy i jakie będą sankcje, jeśli zdecydujesz się utworzyć dużą liczbę obszarów kluczy lub rodzin kolumn (> 10.000).
Stary post na blogu sugerował, że Cassandra rezerwuje pamięć dla każdej rodziny kolumn. Artykuł dotyczył wersji 0.6, a aktualna wersja to 1.0. Czy nadal tak jest i stanowi prawdziwy problem?
Jakie są kary za używanie wielu tysięcy rodzin kolumn lub przestrzeni kluczy w Cassandrze?
Odpowiedzi:
Cassandra 1.0 wykorzystuje minimum 1 MB sterty na CF. Tak więc 1000 lub 2000 CF będzie w porządku dla typowych rozmiarów sterty, ale 10000 prawdopodobnie nie będzie. JVM GC słabo radzi sobie z bardzo dużymi hałdami; Polecam pozostać poniżej 8 GB.
źródło
Uruchomienie węzła Cassandra zacznie trwać dłużej, jeśli masz wiele rodzin kolumn. Wpłynie to również na ilość używanej pamięci.
Tak więc ta ilość pamięci nie zostanie wykorzystana do buforowania wierszy / kluczy i indeksowania. Wydajność może ulec dalszemu obniżeniu w miarę dodawania rodzin kolumn, w zależności od konkretnego sprzętu węzłów.
źródło