Какво е Касандра?

Cassandra е база данни на NoSQL, която е peer to peer distribuна база данни. Тя работи на клъстер, който има хомогенни възли. Той е направен по такъв начин, че да може да обработва големи обеми от данни. С обработката на тези данни той също трябва да може да осигури висока способност. Касандра осигурява високо ниво, когато става въпрос за операции за четене и запис. Архитектурата на клъстера Касандра няма господари, роби или някакви конкретни лидери. Използвайки този начин, той гарантира, че няма единична точка на провал. Нека да разгледаме подробно архитектурата.

Касандра Архитектура

Архитектурата на Касандра се състои главно от Node, Cluster и Data Center. В допълнение към тях има и други компоненти. Касандра е база данни, съхранена на ред. Тя позволява на оторизирани потребители да се свързват с всеки възел във всеки център за данни, използвайки CQL.

Ключови структури в Касандра

Това са следните ключови структури в Касандра:

  • Възел - Тук се съхраняват данните. Той е най-основният компонент на Касандра. Може да се мисли като един сървър в багажник. Той гарантира, че няма нито една точка на повреда.
  • Център за данни - Център за данни е съвкупност от възли. Това може да бъде или физическа, или виртуална. В зависимост от работното натоварване центровете за данни се разделят и избират. Коефициентът на репликация се определя на базата на центъра за данни. В зависимост от този коефициент на репликация данните могат да се записват в различни центрове за данни.
  • Клъстер - Клъстерът включва един или повече центрове за данни. Клъстерите обикновено се простират на различни физически места.

В допълнение към тях, останалите компоненти, които играят роля в Касандра, са както по-долу.

1. Запис на журнал

Данните, които са ангажирани за поддържане на трайността на данните, се съхраняват в дневника на ангажиментите. Данните се преместват в сортирана таблица от низове (обяснено по-нататък) След като това движение е извършено, тогава журналът на ангажиране може да бъде архивиран, изтрит или рециклиран.

2. SS таблица

Тази таблица, както беше споменато в предишната точка, съхранява таблиците на дневника или паметта на редовни интервали. Това е неизменен файл с данни. SS таблиците могат често да съхраняват данни последователно. Те добавят данни и поддържат информация за всяка таблица на Касандра.

3. CQL таблица

Таблицата за запитване на Касандра е колекция от подредени колони, които могат да извлекат ред от тази таблица. В тази таблица се съхраняват колони, където данните могат да бъдат извлечени чрез използване на първичния ключ.

4. Блум филтър

Това е прост вид кеш, където има недетерминирани алгоритми, съхранявани за тестване. Той проверява дали даден елемент е член на множеството или не. Обикновено тези филтри се осъществяват след всяка заявка, която се изпълнява.

Основни компоненти за конфигуриране на Касандра

В Cassandra има следните компоненти:

1. Клюки

  • Както подсказва името, трябва да има комуникация между връстниците, за да се открие и сподели местоположението и състоянието на информация за всички възли.
  • Тази информация трябва да съществува на локално ниво, за да може всеки възел да използва информацията веднага щом възелът трябва да се рестартира. Възлите откриват информация за други възли чрез обмен на информация.
  • Това може да се направи за максимум три възли. Информацията не се споделя с всеки възел, който присъства в клъстера или центъра за данни. Информацията се споделя с няколко възли, но в крайна сметка информацията за състоянието преминава през целия клъстер.

2. Участник

  • Партньорът решава кой възел трябва да получи първата реплика на всякакви данни. Той е отговорен и за грижата за разпространението на тези реплики.
  • Той ще определи кой възел трябва да има коя репликация в клъстера. Всеки ред данни трябва да бъде идентифициран по уникален начин. Това може да стане чрез използване на първичен ключ или ключ за дял.
  • Партньорът е хеш функция, която помага за получаване на токен от първичен ключ от всеки ред. Всеки възел има зададена стойност num_token, която може да бъде зададена като участник.
  • Генерираната стойност на токена помага да се определи кой възел получава репликата на редовете.

3. Фактор на репликация

  • Този фактор определя общия брой реплики, присъстващи в клъстера. Ако коефициентът на репликация е 1, тогава има само едно копие на всеки ред на един възел.
  • По същия начин, ако коефициентът на репликация е два, ще се поддържат две копия, където всяко копие присъства на различен възел. Както споменахме по-рано, в Касандра няма архитектура на главния роб, всяко копие е важно.
  • Коефициентът на репликация се определя за всеки център за данни. Този фактор трябва да е по-голям от един, но не повече от броя на възлите, присъстващи в клъстера.

4. Доносник

  • Стратегията за репликация, която помага да се намери мястото, където трябва да се поставят реплики за група машини в центъра за данни, а стелажът е известен като Snitch.
  • Има динамичен слой, който помага при наблюдение и изпълнение и помага при избора на най-добрата реплика, от която могат да бъдат прочетени данните. Snitches трябва да се конфигурира само когато е създаден клъстер.
  • Има активирани по подразбиране стойности за повечето внедрения. Промените в конфигурацията могат да бъдат направени във Cassandra.yml файл, където присъства динамичният праг на докосване за всеки възел.

5. Мъркле дърво

  • Може да има разлики в блоковете с данни. За да намерите лесно разликите Меркле дърво е хеш дърво, което помага в това.
  • Листовите възли на хешовото дърво съдържат хешове на отделни блокове с данни, а родителските възли имат информацията или също съхраняват хешовете на своите деца.
  • С помощта на тази техника е по-лесно да се открият разликите между присъстващите възли.

6. Таблица на паметта

  • Тази таблица съдържа информация за кеша, чиито данни все още не са обработени и остават в паметта.

заключение

Cassandra е база данни от NoSQL, която е полезна при обработката на огромни количества данни. Тя няма типична главно-робска архитектура и следователно всички възли са еднакво важни. Възлите имат реплики в клъстера според коефициента на репликация. Това гарантира последователност и трайност на данните. С всички тези характеристики е ясно, че Касандра е много полезна за големи данни. Следователно касандрата е трайна, бърза, тъй като се разпределя и надеждна.

Препоръчителни статии

Това е ръководство за Касандра Архитектура. Тук обсъждаме Въведение, Касандра архитектура, ключова структура и ключови компоненти на Касандра. Можете да разгледате и другите ни предложени статии -

  1. Преглед на Kubernetes Architecture
  2. Какво е архитектурата на големи данни?
  3. Функции добавени към AutoCAD архитектура
  4. Облачна компютърна архитектура

Категория: