Скачать PDF
1) Объясните, что такое Кассандра?
Cassandra - это система хранения данных с открытым исходным кодом, разработанная Facebook для поиска по входящим сообщениям и предназначенная для хранения и управления большими объемами данных на обычных серверах. Он может работать как
- Система хранения данных в реальном времени для онлайн-приложений
- Также как база данных с интенсивным чтением для системы бизнес-аналитики
2) Какая польза от Кассандры и зачем использовать Кассандру?
Cassandra была разработана для обработки рабочих нагрузок с большими данными на нескольких узлах без единой точки отказа. Различные факторы, ответственные за использование Кассандры:
- Это отказоустойчивый и последовательный
- Масштабируемость из гигабайт в петабайты
- Это база данных, ориентированная на столбцы
- Нет единой точки отказа
- Нет необходимости в отдельном кэширующем слое
- Гибкий дизайн схемы
- Он имеет гибкое хранилище данных, простое распределение данных и быструю запись.
- Он поддерживает свойства ACID (атомарность, согласованность, изоляция и долговечность).
- Поддержка нескольких центров обработки данных и облака
- Сжатие данных
3) Объясните, что такое составной шрифт в Кассандре?
В Cassandra составной тип позволяет определить ключ или имя столбца с объединением данных разного типа. Вы можете использовать два типа составного типа
- Ключ строки
- Название столбца
4) Как Кассандра хранит данные?
- Все данные хранятся в байтах
- Когда вы указываете валидатор, Cassandra гарантирует, что эти байты закодированы в соответствии с требованиями.
- Затем компаратор упорядочивает столбец на основе порядка, специфичного для кодировки.
- В то время как составные - это просто массивы байтов с определенной кодировкой, для каждого компонента он хранит двухбайтовую длину, за которой следует компонент, закодированный в байтах, за которым следует бит завершения.
5) Назовите основные компоненты модели данных Cassandra?
Основные компоненты модели данных Cassandra:
- Кластер
- Keyspace
- Столбец
- Колонка и семья
6) Объясните, что такое семейство столбцов в Кассандре?
Семейство столбцов в Cassandra относится к коллекции строк.
7) Объясните, что такое кластер в Кассандре?
Кластер - это контейнер для пространств ключей. База данных Cassandra сегментирована по нескольким машинам, которые работают вместе. Кластер - это самый внешний контейнер, который упорядочивает узлы в кольцевом формате и назначает им данные. У этих узлов есть реплика, которая берет на себя ответственность в случае сбоя обработки данных.
8) Перечислите другие компоненты Кассандры?
Остальные компоненты Кассандры:
- Узел
- Дата центр
- Кластер
- Журнал фиксации
- Mem-таблица
- SSTable
- Цветочный фильтр
9) Объясните, что такое пространство клавиш в Кассандре?
В Cassandra пространство ключей - это пространство имен, которое определяет репликацию данных на узлах. Кластер состоит из одного пространства ключей на узел.
10) Каков синтаксис для создания пространства ключей в Cassandra?
Синтаксис для создания пространства ключей в Cassandra:
СОЗДАТЬ КЛЮЧЕВОЕ ПРОСТРАНСТВО <идентификатор> С <свойства>
11) Укажите, какие значения хранятся в столбце Cassandra?
В Cassandra Column в основном есть три значения
- Название столбца
- Ценить
- Штамп времени
12) Упомяните, когда можно использовать Alter keyspace?
ALTER KEYSPACE можно использовать для изменения таких свойств, как количество реплик и длительная запись пространства ключей.
13) Объясните, что такое Cassandra-Cqlsh?
Cassandra-Cqlsh - это язык запросов, который позволяет пользователям взаимодействовать с его базой данных. Используя Cassandra cqlsh, вы можете делать следующие вещи
- Определить схему
- Вставьте данные и
- Выполнить запрос
14) Упомяните, что определяют команды оболочки «Capture» и «Consistency»?
В Cassandra есть различные команды оболочки Cqlsh. Команда «Захват» фиксирует вывод команды и добавляет его в файл, в то время как команда «Согласованность» отображает текущий уровень согласованности или устанавливает новый уровень согласованности.
15) Что обязательно при создании таблицы в Кассандре?
Хотя создание первичного ключа таблицы является обязательным, он состоит из одного или нескольких столбцов таблицы.
16) Упомяните, о чем нужно позаботиться при добавлении столбца?
При добавлении столбца необходимо позаботиться о том, чтобы
- Имя столбца не конфликтует с существующими именами столбцов
- Стол не определен с возможностью компактного хранения
17) Упомяните, что такое Cassandra- CQL-коллекции?
Коллекции Cassandra CQL помогают хранить несколько значений в одной переменной. В Cassandra вы можете использовать коллекции CQL следующими способами
- Список : используется, когда необходимо поддерживать порядок данных, а значение должно сохраняться несколько раз (содержит список уникальных элементов).
- SET : используется для хранения группы элементов и возврата в отсортированном порядке (содержит повторяющиеся элементы)
- MAP : это тип данных, используемый для хранения пары элементов "ключ-значение".
18) Объясните, как Кассандра пишет данные?
Кассандра записывает данные в трех компонентах
- Запись в журнал фиксации
- Memtable написать
- SStable write
Кассандра сначала записывает данные в журнал фиксации, а затем в структуру таблицы в памяти memtable и, наконец, в SStable.
19) Объясните, что такое Memtable в Кассандре?
- Кассандра записывает данные в структуру памяти, известную как Memtable.
- Это кеш в памяти с содержимым, хранящимся как ключ / столбец
- По ключу данные Memtable сортируются
- Для каждого семейства ColumnFamily существует отдельная таблица Memtable, которая извлекает данные столбца из ключа
20) Объясните, из чего состоит SStable?
SStable состоит в основном из 2 файлов
- Индексный файл (пары фильтра Блума и ключевых смещений)
- Файл данных (фактические данные столбца)
21) Объясните, для чего используется фильтр Блума в Кассандре?
Фильтр Блума - это компактная структура данных, которая используется для проверки того, является ли элемент членом набора. Другими словами, он используется, чтобы определить, есть ли в SSTable данные для конкретной строки. В Cassandra он используется для сохранения ввода-вывода при выполнении KEY LOOKUP.
22) Объясните, как Кассандра записывает измененные данные в журнал коммитов?
- Cassandra объединяет измененные данные в журнал фиксации
- Commitlog действует как журнал аварийного восстановления данных
- Пока измененные данные не будут объединены в журнал фиксации, операция записи никогда не будет считаться успешной.
Данные не будут потеряны после сброса журнала фиксации в файл.
23) Объясните, как Кассандра удаляет данные?
SSTables неизменяемы и не могут удалить строку из SSTables. Когда необходимо удалить строку, Cassandra присваивает значение столбца специальное значение, называемое Tombstone. Когда данные считываются, значение Tombstone считается удаленным.