Съдържание
Касандра е база данни NoSQL мощен и мащабируем. Той е с отворен код и неговата архитектура е проектирана като разпределена система, където всички възли са еднакви в нея, като по този начин позволява да се разпределят данни във всички възли в клъстера.Съхранение в Касандра се определя като ключ / стойност където ключът може да се съпостави с една или повече стойности. Е База данни ориентирани към записи на редове, където всеки ред се идентифицира с неговия ключ и особеността на тази система е, че ред може да се съхранява в повече от един възел.
Преди да пристъпите към инсталирането на Касандра в нашата система, трябва да знаем малко за архитектурата на това База данни, по този начин ще знаем какво имаме и какво можем да постигнем.
Когато говорим за репликация на информация, един от първите въпроси, които си задаваме е: Колко копия са ни необходими? Това в Cassandra не е лесен въпрос за отговор, но това, което трябва да имаме предвид, е, че този фактор показва броя на възлите, които се съхраняват в един и същи ред.
Например коефициент на репликация 2 гарантира, че ще има две копия на информацията за възлите в клъстера. Изборът на втората стойност за фактора на репликация е добър за покриване на повреди в даден възел в средата за разработка и може да бъде минимумът за производствените среди, тъй като ако един възел слезе надолу, другият ще обработи всички заявки, така че трябва да мислим внимателно, преди да го приложите.
Пространство за клавишиКасандра ни позволява да групираме информацията в нещо, наречено ключови пространства, къде можем да кажем, че тези ключови пространства те са контейнери за информация за приложението. Клъстерът обаче има едно ключово пространство за приложение Касандра използвайте тези ключови пространства за обработка на репликация.
Семейство колониСлед като дефинираме нашия клавишно пространство, вътре в него имаме нещо, наречено семейство колони, това са контейнери еднакво, но за колекция от редове. Всеки ред е подредена колекция от колони и можем да направим аналогия по отношение на релационните бази данни, където семейство колони те са донякъде подобни на таблиците.
Стратегия за репликацияВ Касандра Има две стратегии за възпроизвеждане на информация, една от тях и тази, която вече разгледахме, е простата стратегия или SimpleStrategy който е отговорен за копирането на информацията в следващия възел, докато не бъде изпълнен дефинираният коефициент на репликация. Втората стратегия се нарича NetworkTopologyStrategy, където това е най -добрият вариант, ако искаме да разпространяваме информацията в множество центрове за данни.
Протоколът, използван от Касандра за споделяне на местоположението на възлите и се извиква информацията за тях в клъстера Клюка. Където тези възли постоянно „мрънкат“ и обменят информация с до 3 възли в клъстера.
Този протокол, подобно на други, има своите правила за изпращане на заявки до други възли, където можем да видим три стъпки за него и всеки възел винаги повтаря тези стъпки:
1- Мърморене на случаен активен възел.
2- Инициирайте шум към произволен низходящ възел.
3- Тази стъпка е незадължителна и определя, че ако възелът, избран в стъпка първа, не е начален възел, роптайте към друг случаен възлов възел.
Но за преместване на информацията и осъществяване на комуникацията между възлите Касандра използвайте компонент, наречен СничДа видим какво имаш предвид.
По принцип този компонент е отговорен за управлението на движението на информация между възли, приемайки други възли за заявки и репликация въз основа на различни показатели. Тази конфигурация е една и съща за всички възли в клъстера, но може да варира по своя тип, нека видим кои от тях имаме на разположение:
SimpleSnitchИзползва се при прости внедрявания на центрове за данни и a доносник конфигуриран по този начин не използва никаква информация от центъра за данни. Поведението му е просто и то е да намери следващия възел.
Динамично цъканеТази конфигурация следи производителността на репликите и избира най -добрата въз основа на проста метрика, която наказва дългите времена на отговор и избягва възли, които компресират вашата информация.
RackInferringSnitchТова, което прави тази конфигурация, е да използва IP адреса, за да определи местоположението на възлите, където последната част от IP идентифицира възела, втората стелажите и третата центровете за данни.
PropertyFileSnitchТова позволява дефинирането на топологията на клъстера във файл със свойства, обикновено тази конфигурация се използва, ако RackInferringSnitch не приложимо.
GossipingPropertyFileSnitchТой използва файл за свойства за първоначална конфигурация и продължава с шума, за да изпраща информация до други възли.
Инсталирането на Касандра Ще го направим в екип с Windows 8, в които трябва да отговорим на определени изисквания преди това, нека видим от какво се нуждаем:
1- Трябва да имаме поне Java 7 инсталирани в нашата система, ако нямаме такава, можем да изтеглим най -новата версия на следната връзка.
2- Освен това имаме нужда Microsoft Visual C ++ 2008 пакет за разпространение (x86).
3- Най -накрая интернет връзка за изтегляне на пакета DataStax.
След преразглеждане на нашите изисквания, ще отидем на страницата на проекта и ще потърсим 32 или 64-битовата версия, която отговаря на нашата система:
Увеличете
С инсталацията в нашата система са инсталирани няколко инструмента, един от тях е уеб интерфейсът на Касандра обади се OpsCenter, към който можем да въведем, ако поставим в браузъра си следния адрес:
http: // localhost: 8888 / opscenter / index.htmlТози интерфейс ни позволява да правим няколко интересни неща, но не е най -оптималното за работа Касандра, но за целите на този урок е важно да го познаем, да видим какво ни предлага и по този начин да имаме отправна точка, за да започнем да познаваме структурата на базата данни.
Първото нещо, което откриваме при влизане в този интерфейс, е секцията на Табло, където можем да визуализираме различни показатели за производителност, като здраве на възела, капацитет за съхранение или заявки за запис:
Увеличете
Увеличете
Увеличете
За да създадете a клавишно пространство, първо трябва да отидем в раздела Данни и там изберете опцията Добавяне, въвеждаме името, стратегията за репликация, която обясняваме, че може да бъде проста или мрежова топология, и коефициента на репликация.
С това завършихме този урок, където можехме да видим каква е архитектурата Касандра, неговия протокол, компоненти и неговата инсталация. Научихме за структурата чрез уеб интерфейса, но с това само докоснахме върха на айсберга, в бъдещите уроци ще влезем изцяло с CQL и как да работите професионално Касандра.