Cassandra: к какому типу БД относится и каковы её ключевые характеристики?

Ответ

Cassandra — это распределенная NoSQL база данных типа wide-column store (ширококолоночное хранилище). Она спроектирована для обеспечения высокой доступности и линейной масштабируемости на кластерах из сотен серверов.

Ключевые характеристики:

  • Горизонтальная масштабируемость и децентрализация: В архитектуре нет единой точки отказа (masterless). Все узлы в кластере равны, что позволяет легко добавлять новые для увеличения производительности.
  • Высокая доступность и отказоустойчивость: Данные автоматически реплицируются по нескольким узлам (и даже дата-центрам), что гарантирует работу системы при выходе из строя части серверов.
  • Настраиваемая согласованность (Tunable Consistency): Позволяет для каждого запроса выбирать баланс между согласованностью данных (Consistency) и доступностью (Availability), следуя теореме CAP.
  • Оптимизация под запись: Cassandra обеспечивает чрезвычайно высокую скорость записи данных.

Язык запросов — CQL (Cassandra Query Language), синтаксически похожий на SQL.

Пример:

CREATE TABLE users (
    user_id UUID PRIMARY KEY,
    name TEXT,
    email TEXT
);

INSERT INTO users (user_id, name, email) VALUES (uuid(), 'Alice', 'alice@example.com');

Основные сценарии использования: хранение временных рядов, IoT-данных, пользовательских профилей — везде, где важна масштабируемость и скорость записи.