Създайте Keyspace в Cassandra: Създаване, промяна и премахване с пример
В какво е Keyspace Cassandra?
Ключово пространство в Cassandra е контейнер за данни, подобен на база данни в RDMBS (системи за управление на релационни бази данни). Cassandra Keyspace определя как данните се репликират на възли.
Как да създадете Keyspace в Cassandra
Ключовото пространство е обект, който съдържа фамилиите колони, потребителски дефинирани типове. в Cassandra, Keyspace е подобно на RDBMS База данни. Keyspace съдържа семейства колони, индекси, дефинирани от потребителя типове, осведоменост за центъра за данни, стратегия, използвана в keyspace, фактор на репликация и т.н.
команда "Създайте Keyspace” се използва за създаване на ключово пространство в Cassandra.
Синтаксис
Create keyspace KeyspaceName with replication={'class':strategy name, 'replication_factor': No of replications on different nodes};
Различни компоненти на Cassandra Ключово пространство
- Стратегия: Докато декларирате името на стратегията в Cassandra. Има два вида стратегии, декларирани в Cassandra Синтаксис.
- Проста стратегия: Простата стратегия се използва, когато имате само един център за данни. При тази стратегия първата реплика се поставя на възела, избран от устройството за разделяне. Останалите възли се поставят по посока на часовниковата стрелка в пръстена, без да се взема предвид местоположението на стелажа или възела.
- Стратегия за мрежова топология: Стратегията за мрежова топология се използва, когато имате повече от един център за данни. В тази стратегия трябва да предоставите фактор на репликация за всеки център за данни поотделно. Стратегията за мрежова топология поставя реплики във възли по посока на часовниковата стрелка в същия център за данни. Тази стратегия се опитва да постави реплики в различни рафтове.
- Фактор на репликация: Факторът на репликация е броят реплики на данни, поставени на различни възли. За липса на неуспех 3 е добър коефициент на репликация. Повече от два репликационни фактора гарантират, че няма нито една точка на отказ. Понякога сървърът може да не работи или може да възникне мрежов проблем, след което други реплики предоставят услуга без повреда.
- Пример: Ето моментната снимка на изпълнената команда „Create Keyspace“, която ще създаде keyspace Cassandra.
Create keyspace University with replication={'class':SimpleStrategy,'replication_factor': 3};
След успешното изпълнение на командата „Create Keyspace“ ще бъде създаден Keyspace University Cassandra със стратегия „SimpleStrategy“ и репликационен фактор 3.
Промяна на пространството на клавишите Cassandra
Командата „Промяна на пространството на ключовете“ променя фактора на репликация, името на стратегията и свойствата за траен запис в създаденото пространство на ключове в Cassandra.
Синтаксис
Alter Keyspace KeyspaceName with replication={'class':'StrategyName', 'replication_factor': no of replications on different nodes} with DURABLE_WRITES=true/false
Ключови аспекти при промяна на Keyspace в Cassandra
- Име на ключово пространство: Името на ключово пространство не може да бъде променено Cassandra.
- Име на стратегия: Името на стратегията може да бъде променено чрез посочване на ново име на стратегия.
- Фактор на репликация: Факторът на репликация може да бъде променен чрез указване на нов фактор на репликация.
- Стойността на DURABLE_WRITES :DURABLE_WRITES може да бъде променена чрез посочване на нейната стойност true/false. По подразбиране е вярно. Ако е зададено на false, никакви актуализации няма да се записват в журнала за записване и обратно.
- Изпълнение: Ето моментната снимка на изпълнената команда „Alter Keyspace“, която променя стратегията на keyspace от „SimpleStrategy“ на „NetworkTopologyStrategy“ и коефициента на репликация от 3 на 1 за DataCenter1.
Alter Keyspace University with replication={'class':'NetworktopologyStrategy', 'DataCenter1':1};
След успешното изпълнение на командата „Alter Keyspace“, Strategyname ще бъде променено от „SimpleStrategy“ на „NetworkTopologyStrategy“ и коефициентът на репликация ще бъде променен от 3 на 1 за „DataCenter1“.
Cassandra Пуснете Keyspace
команда 'Пуснете Keyspace' изпуска ключово пространство, включително всички данни, семейства колони, потребителски дефинирани типове и индекси от Cassandra. Преди да пуснете клавишното пространство, Cassandra прави моментна снимка на пространството на ключовете. Ако ключовото пространство не съществува в Cassandra, Cassandra ще върне грешка, освен ако не се използва IF EXISTS.
Синтаксис
Drop keyspace KeyspaceName
Пример
Ето моментната снимка на изпълнената команда „Drop Keyspace“, която ще премахне keyspace University.
Drop keyspace University;
След успешното изпълнение на командата 'Drop keyspace University', keyspace University ще бъде премахнат от Cassandra с всички данни и схема.
Ето моментната снимка, при която се връща грешката при опит за достъп до пространство на ключове, което не съществува.
Забележка: Няма разлика в пускане на клавишно пространство и изтриване на клавишно пространство. Drop keyspace е равно на изтриване на keyspace.