Apache Cassandra

Продукт
Разработчики: Apache Software Foundation (ASF)
Дата последнего релиза: 2015/11/10
Технологии: СУБД

Содержание

Cassandra — система для создания хранилищ больших массивов данных, ее используют многие всемирно известные компании, среди них: Twitter, Instagram, eBay. В России Cassandra пока используется мало, чаще всего из-за недостатка информации.

2020: Включение в линейку сервисов DBaaS от DataLine

Готовые БД Redis и Cassandra дополнили линейку DBaaS, в которую входят базы данных MS SQL, PostgreSQL, MySQL и MongoDB. Об этом DataLine сообщил 30 июня 2020 года. Подробнее здесь.

2015

Apache Cassandra 3.0

10 ноября 2015 года организация Apache Software Foundation (ASF) объявила о релизе Apache Cassandra 3.0[1].

В пресс-релизе ASF Apache Cassandra 3.0 упоминается как веха в эволюции этой СУБД.

В продукте три основных изменения:

  • оптимизированный для языка CQL движок хранения и формат данных SSTables;
  • материализованные представления;
  • более эффективная работа hints.


Выпуск бета-версии драйвера Java для Cassandra 3.0.0 официально произойдет на следующей неделе, актуальный драйвер для Python получил номер версии 3.0.0 rc1.

Apache Cassandra 2.2

20 июля 2015 года стало известно о выпуске релиза распределённой СУБД Apache Cassandra 2.2[2].

Основные изменения в системе

  • Возможность прямого добавления, обновления и выборки данных в формате JSON, без необходимости применения надстроек sstable2json и json2sstable, которые объявлены устаревшими;
  • Поддержка создания определяемых пользователем функций из Java, Javascript и других языков, поддерживающих Java Scripting API. За счет встраиваемых функций, выполняемых на стороне СУБД и обрабатывающих данные без копирования на сторону конечного приложения, можно существенно поднять производительность всей системы обработки данных;
  • Проведена серия оптимизаций производительности, в том числе поддержка сжатия лога коммитов и включена по умолчанию техника слияния сообщений;
  • Увеличена эффективность передачи данных между узлами посредством включения гибкой системы сжатия, допускающей выбор разного уровня сжатия для разных условий, что особенно полезно в таких ситуациях, как перестроение узла после сбоя или перенос данных в новый ЦОД.
  • Добавлена система управления доступом на основе ролей, упрощающая администрирование конфигураций, охватывающих несколько команд разработчиков и отделов. Одни пользователи могут делегировать полномочия другим пользователям, в том числе на уровне выполнения операций CREATE, ALTER, DROP и AUTHORIZE, без необходимости получения привилегий суперпользователя;
  • Добавлена новая утилита sstableverify для проверки целостности всех таблиц;
  • Обеспечена полноценная поддержка платформы Microsoft Windows;

БД Cassandra объединяет в себе полностью распределённую hash-систему Dynamo, обеспечивающую практически линейную масштабируемость при увеличении объема данных. Cassandra использует модель хранения данных на базе семейства столбцов (ColumnFamily), отличающуюся от систем подобных memcachedb, которые хранят данные только в связке ключ/значение, возможностью организовать хранение хэшей с несколькими уровнями вложенности. Для упрощения взаимодействия с БД поддерживается язык формирования структурированных запросов CQL (Cassandra Query Language), напоминающий SQL, но урезанный по функциональности. Из возможностей можно отметить поддержку пространств имён и семейств столбцов, создание индексов через выражение "CREATE INDEX". Драйверы с поддержкой CQL подготовлены для языков Python, Java (JDBC/DBAPI2) и JavaScript (Node.js).Метавселенная ВДНХ 3.4 т

СУБД позволяет создавать устойчивые к сбоям хранилища: помещаемые в БД данные автоматически реплицируются на несколько узлов распределённой сети, в составе которой могут действовать разные центры обработки данных. При сбое узла его функции на лету подхватываются другими узлами. Добавление новых узлов в кластер и обновление версии Cassandra производится на лету, без дополнительного ручного вмешательства, изменения конфигурации других узлов.

2013

Apache Cassandra 2.0

Самыми важными нововведениями NoSQL-СУБД Cassandra 2.0, выпущенной в сентябре 2013 года фондом Apache, названы `лёгкие` транзакции, язык запросов CQL, напоминающий SQL, и триггеры. Джонотан Эллис, вице-президент проекта, особо отметил, что Cassandra теперь упрощает переход с РСУБД, однако технологию такого упрощения не уточнил[3].

Созданная первоначально в Facebook, эта свободно распространяемая распределённая СУБД в 2008 г. была передана фонду Apache, и сегодня активно используется в CERN, eBay, IBM, Instagram, NASA, Reddit, Twitter и множестве других организаций. Крупнейший кластер Cassandra успешно обрабатывает 300 Тб данных на 400 серверах. Все узлы сети Cassandra выполняют идентичные функции, что исключает вероятность возникновения `единой точки сбоя` и упрощает масштабирование.

В новой версии `легкие` транзакции решают конфликты попыток модификации данных одновременными запросами. Триггеры позволяют выполнять прикладной код при изменении информации в базе, а за счёт распределённой архитектуры скорость выполнения запроса, вызвавшего срабатывание триггера, не ухудшается. Повышена компактность БД, снижена вероятность таймаутов запросов. Использовать функциональность Cassandra в прикладных задачах теперь можно не только через программный API, но и через язык запросов CQL, который официально добавился в январе, но только сейчас доступен в зрелом виде. Хотя Cassandra поддерживает модель `ключ-значение`, однако её конкретная реализация напоминает работу с таблицами, поэтому CQL сохранил привычный SQL-кодировщикам синтаксис: можно использовать команды SELECT, INSERT, CREATE TABLE и т. д.

Примечания





Подрядчики-лидеры по количеству проектов

За всю историю
2021 год
2022 год
2023 год
Текущий год

  SAP CIS (САП СНГ) (38)
  Softline (Софтлайн) (35)
  РДТЕХ (33)
  BeringPro (БерингПойнт) ранее BearingPoint Russia (28)
  ФОРС - Центр разработки (25)
  Другие (729)

  Сапиенс солюшнс (Sapiens solutions) (7)
  Navicon (Навикон) (3)
  BeringPro (БерингПойнт) ранее BearingPoint Russia (3)
  GlowByte, ГлоуБайт (ранее Glowbyte Consulting, ГлоуБайт Консалтинг) (2)
  IFellow (АйФэлл) (2)
  Другие (35)

  РДТЕХ (1)
  IBS (1)
  Ред Софт (Red Soft) (1)
  InnoSTage (Инностейдж) (1)
  Сбербанк-Технологии (СберТех) (1)
  Другие (20)

  Arenadata (Аренадата Софтвер) (5)
  Тантор Лабс (Tantor Labs) (3)
  ФОРС - Центр разработки (2)
  Ред Софт (Red Soft) (1)
  Digital Design (Диджитал Дизайн) (1)
  Другие (18)

  Arenadata (Аренадата Софтвер) (5)
  GlowByte, ГлоуБайт (ранее Glowbyte Consulting, ГлоуБайт Консалтинг) (2)
  GMCS (1)
  ISimpleLab (АйСимплЛаб) (1)
  RDV (РДВ Автоматизация) (1)
  Другие (13)

Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Oracle (44, 179)
  SAP SE (6, 177)
  Microsoft (23, 142)
  PostgreSQL Global Development Group (14, 125)
  Постгрес профессиональный (ППГ, Postgres Professional) (6, 40)
  Другие (263, 242)

  SAP SE (3, 11)
  Microsoft (3, 11)
  PostgreSQL Global Development Group (3, 10)
  Oracle (2, 4)
  Постгрес профессиональный (ППГ, Postgres Professional) (2, 3)
  Другие (10, 13)

  PostgreSQL Global Development Group (4, 9)
  Постгрес профессиональный (ППГ, Postgres Professional) (2, 6)
  VK Tech (ранее VK Цифровые технологии, ВК Цифровые технологии и Mail.ru Цифровые технологии) (2, 3)
  Arenadata (Аренадата Софтвер) (3, 2)
  Apache Software Foundation (ASF) (2, 2)
  Другие (9, 9)

  PostgreSQL Global Development Group (3, 13)
  Постгрес профессиональный (ППГ, Postgres Professional) (1, 6)
  Arenadata (Аренадата Софтвер) (3, 5)
  Apache Software Foundation (ASF) (3, 4)
  Тантор Лабс (Tantor Labs) (2, 3)
  Другие (8, 10)

  PostgreSQL Global Development Group (4, 10)
  Arenadata (Аренадата Софтвер) (3, 6)
  VMware (2, 6)
  Постгрес профессиональный (ППГ, Postgres Professional) (2, 5)
  Сбербанк-Технологии (СберТех) (2, 2)
  Другие (4, 6)

Распределение систем по количеству проектов, не включая партнерские решения

За всю историю
2021 год
2022 год
2023 год
Текущий год

  Oracle Database - 106
  Microsoft SQL Server - 104
  SAP NetWeaver Business Warehouse (SAP BW/4HANA) - 102
  PostgreSQL СУБД - 79
  SAP HANA (High Performance Analytic Appliance) - 72
  Другие 374

  Microsoft SQL Server - 9
  SAP NetWeaver Business Warehouse (SAP BW/4HANA) - 8
  PostgreSQL СУБД - 7
  Oracle Database - 3
  SAP HANA (High Performance Analytic Appliance) - 3
  Другие 21

  Postgres Pro СУБД - 5
  ADB - Arenadata DB - 2
  PostgreSQL СУБД - 2
  Oracle Database - 2
  Tarantool Платформа in‑memory вычислений - 2
  Другие 13

  Postgres Pro СУБД - 6
  PostgreSQL СУБД - 4
  Tantor СУБД - 3
  ADB - Arenadata DB - 3
  Apache Kafka - 2
  Другие 10

  ADB - Arenadata DB - 5
  PostgreSQL СУБД - 4
  Postgres Pro СУБД - 3
  ADH - Arenadata Hadoop - 2
  Сбер Platform V Pangolin - 2
  Другие 8