Что такое Keyspace? Cassandra Create Keyspace (с примерами)
Apache Cassandra — это распределенная база данных, которая отличается высокой производительностью и масштабируемостью, не имеющая единой точки отказа и способная обрабатывать огромные объемы данных на многочисленных серверах. Она относится к семейству баз данных NoSQL.
Операции в пространстве ключей Кассандры
Различные операции с пространством ключей в Cassandra включают в себя:
- Создание пространства ключей
- Изменение пространства ключей
- Удаление пространства ключей
Давайте теперь рассмотрим каждый из них подробнее.
1. Создание пространства ключей Cassandra
В Cassandra пространство имен, которое определяет репликацию данных на узлах, называется Keyspace. Каждый узел в кластере имеет свое собственное Keyspace.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
Ниже представлен синтаксис создания пространства ключей в Cassandra.
Синтаксис Cassandra Create keyspace
СОЗДАТЬ ПРОСТРАНСТВО КЛЮЧЕЙ <идентификатор> СО <свойствами пространства ключей>
Полный синтаксис со свойствами:
СОЗДАТЬ ПРОСТРАНСТВО КЛЮЧЕЙ «Имя пространства ключей»
WITH replication = {'class': 'Имя стратегии', 'replication_factor' : 'Количество реплик'};
СОЗДАТЬ ПРОСТРАНСТВО КЛЮЧЕЙ «Имя пространства ключей»
WITH replication = {'class': 'Имя стратегии', 'replication_factor' : 'Количество реплик'}
И permanent_writes = 'Логическое значение';
Теперь рассмотрим свойства Keyspace в Cassandra.
Два свойства Cassandra создают Keyspace
У Кассандры есть два основных свойства:
- прочные_записи
- Репликация
Давайте теперь обсудим их подробнее.
1. Репликация
Метод размещения реплик и желаемое количество реплик указываются в параметре «Репликация».
Все стратегии размещения реплик перечислены ниже:
- Стратегия старой сетевой топологии — этот подход используется для репликации устаревших систем.
- Стратегия топологии сети. С помощью этой опции вы можете независимо настроить коэффициент репликации для каждого центра обработки данных.
- Простая стратегия — назначает кластеру базовый фактор репликации.
Ниже представлена иллюстрация построения KeySpace.
Станьте специалистом по обработке данных с реальным опытомПрограмма магистратуры по обработке данныхИзучить программу
Пример
cqlsh.> СОЗДАТЬ ПРОСТРАНСТВО КЛЮЧЕЙ simplilearn
С репликацией = {'class':'SimpleStrategy', 'replication_factor' : 2};
Здесь создается KeySpace под названием simplilearn.
- Мы применяем стратегию топологии сети — второй метод размещения реплик.
- Кроме того, мы установили коэффициент репликации равным 2 репликам.
Проверка
Используя команду Describe, вы можете определить, была ли создана таблица. Эта команда отобразит все созданные пространства ключей, как показано ниже, если вы используете ее над пространствами ключей.
cqlsh> ОПИСАТЬ пространства ключей;
система simplilearn system_traces
2. прочные_записи
Свойство permanent_writes таблицы может быть изменено с его значения по умолчанию true на false. Это свойство не может быть установлено на симплексную стратегию.
Пример
cqlsh> Тест СОЗДАНИЯ ПРОСТРАНСТВА КЛЮЧЕЙ
… С РЕПЛИКАЦИЕЙ = { 'class' : 'NetworkTopologyStrategy', 'datacenter1' : 3 }
… И DURABLE_WRITES = false;
Проверка
Запросив System Keyspace, мы можем определить, был ли атрибут test KeySpace's permanent writes установлен на false. Мы можем получить список всех KeySpaces и их свойств с помощью следующего запроса –
cqlsh> ВЫБРАТЬ * ИЗ system_schema.keyspaces;
имя_пространства_ключей | прочные_записи | класс_стратегии | параметры_стратегии
—————-+—————-+—————- ————————————-+———– —————–
тест | Ложь | org.apache.cassandra.locator.Стратегия топологии сети | {“datacenter1” : “3”}
simplilearn | True | org.apache.cassandra.locator.SimpleStrategy | {“replication_factor” : “4”}
система | Истина | org.apache.cassandra.locator.LocalStrategy | { }
system_traces | True | org.apache.cassandra.locator.SimpleStrategy | {“replication_factor” : “2”}
Здесь мы видим атрибут теста permanent writes. Значение KeySpace было false.
Итак, как нам создать Keyspace? Давайте посмотрим, как это сделать.
Использование пространства ключей
Ключевое слово USE можно использовать для доступа к недавно созданному KeySpace.
Для этого можно использовать следующий синтаксис:
Синтаксис
ИСПОЛЬЗУЙТЕ <идентификатор>
Пример
В следующем примере мы используем обучающую точку KeySpace:
cqlsh> ИСПОЛЬЗУЙТЕ simplilearn;
cqlsh:tutorialspoint>
Давайте теперь рассмотрим, как изменить KeySpace.
Станьте экспертом в области науки о данных и получите работу своей мечтыПрограмма аспирантуры Калифорнийского технологического института по науке о данныхИзучить программу
2. Изменение KeySpace
Мы можем изменить число записей и количество реплик KeySpace с помощью команды ALTER KEYSPACE.
Синтаксис этой команды показан ниже.
Синтаксис
ALTER KEYSPACE <идентификатор> С <свойствами>
Подробный синтаксис
ALTER KEYSPACE «Имя пространства ключей»
WITH replication = {'class': 'Имя стратегии', 'replication_factor' : 'Количество реплик'};
Давайте теперь рассмотрим свойства Alter KeySpace.
Свойства Alter Keyspace
Свойства CREATE KEYSPACE и ALTER KEYSPACE идентичны.
Они есть:
- Репликация
- прочные_записи
Давайте рассмотрим их подробнее.
1. Репликация
Опция репликации предоставляет желаемое количество реплик, а также стратегию размещения реплик.
Все стратегии размещения реплик перечислены ниже:
- Стратегия старой сетевой топологии — этот подход обеспечивает репликацию устаревших систем.
- Стратегия топологии сети. С помощью этой опции вы можете независимо настроить коэффициент репликации для каждого центра обработки данных.
- Простая стратегия — назначает кластеру базовый фактор репликации.
Ниже представлена иллюстрация построения KeySpace.
Пример
cqlsh.> ИЗМЕНИТЬ ПРОСТРАНСТВО КЛЮЧЕЙ simplilearn
С репликацией = {'class':'SimpleStrategy', 'replication_factor' : 2};
2. прочные_записи
Мы можем указать Cassandra, использовать ли commitlog для обновлений текущего KeySpace или нет, используя эту опцию. Эта опция необязательна и по умолчанию имеет значение true.
Пример изменения KeySpace приведен ниже.
Пример
Здесь мы меняем SimpliLearn KeySpace.
Коэффициент репликации изменяется с 1 на 3.
cqlsh.> ИЗМЕНИТЬ ПРОСТРАНСТВО КЛЮЧЕЙ simplilearn
С репликацией = {'class':'NetworkTopologyStrategy', 'replication_factor' : 3};
Давайте теперь посмотрим, как мы изменим permanent_writes.
Изменение permanent_writes
ВЫБРАТЬ * ИЗ system.schema_keyspaces;
имя_пространства_ключей | прочные_записи | класс_стратегии | параметры_стратегии
—————-+—————-+—————- ———————-+———– —————–
тест | Ложь | org.apache.cassandra.locator.Стратегия топологии сети | {“datacenter1″:”3”}
tutorialspoint | True | org.apache.cassandra.locator.SimpleStrategy | {“replication_factor”:”4″}
система | Истина | org.apache.cassandra.locator.LocalStrategy | { }
system_traces | True | org.apache.cassandra.locator.SimpleStrategy | {“replication_factor”:”2″}
(4 ряда)
Тест ALTER KEYSPACE
С РЕПЛИКАЦИЕЙ = {'class' : 'NetworkTopologyStrategy', 'datacenter1' : 3}
И DURABLE_WRITES = правда;
Мы узнали, как создавать, использовать и изменять Keyspace в Cassandra. Теперь давайте посмотрим, как удалить Cassandra Keyspace.
3. Кассандра Drop Keyspace
Команду DROP KEYSPACE можно использовать для удаления или сбрасывания KeySpace.
Синтаксис ниже демонстрирует удаление KeySpace.
Синтаксис
DROP KEYSPACE «Имя KeySpace»
Пример
Пространство ключей simplilearn удаляется с помощью следующего кода.
cqlsh> УДАЛЕНИЕ ПРОСТРАНСТВА КЛЮЧЕЙ simplilearn;
Проверка
Используйте команду Describe для проверки пространств ключей, а затем проверьте, была ли удалена таблица, как указано ниже.
cqlsh> ОПИСАТЬ пространства ключей;
система system_traces
Мы не сможем найти пространство ключей simplilearn в списке пространств ключей, поскольку мы его удалили.
Зарегистрируйтесь на программу подготовки кадров по направлению «Наука о данных», чтобы освоить более десятка инструментов и навыков в области науки о данных, а также посетить мастер-классы преподавателей Университета Пердью и экспертов IBM, эксклюзивные хакатоны и сессии Ask Me Anything от IBM.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)