Что такое Cassandra

Cassandra

колоночная распределенная система управления базами данных (РСУБД) класса NoSQL (Not Only SQL). Рассчитана на работу с большими массивами информации. Написана в Facebook на Java и передана в 2009 году в фонд Apache Software Foundation.

Поддерживаются системы Linux на основе пакетов deb (Debian, Ubuntu) и RPM (Red Hat, CentOS). Для работы Cassandra требуется Java. Сама СУБД устанавливается из репозитория или бинарника, а также, как процесс docker. Скачать последнюю версию можно с официального сайта. На нем же можно ознакомиться с документацией (но только на английском языке).

Cassandra поддерживает свой собственный язык запросов — CQL. Он схож с SQL, но поддерживает только простейшие запросы SELECT. Также в ней нет команды INSERT — вместо нее и для добавления, и для обновления используется UPDATE. Подключение к базе можно выполнить с помощью cqlsh — оболочки, которая идет в комплекте с Cassandra.

Особенности:

  • Нет транзакций.
  • Нет поддержки JOIN в запросах.
  • Нет поддержки логического оператора ИЛИ (OR) в WHERE.
  • При создании вторичного индекса создается новая таблица.
  • При удалении записей, они еще какое-то время остаются в системе.
  • Идемпотентные операции — повторное действие оставляется систему в таком же состоянии.

Cassandra устанавливается в режиме кластера. Узел, на который отправляется запрос считается координатором. Он автоматически отправляет изменения на часть нод кластера (согласно настройки Replication Factor), которые будут называться репликами. Также при попытке сделать выборку, координатор может разбить запрос по разным нодам.

Плюсы:

  1. Высокая скорость работы.
  2. Отказоустойчивость и масштабирование.

Минусы:

  1. Плохо подходит для проектов, где часто меняются или удаляются данные.
  2. Нет транзакций.

Среди других баз класса NoSQL можно выделить:

Подробнее о Cassandra на Википедии.

admin

Share
Published by
admin

Recent Posts

Что такое Zulip

Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…

2 месяца ago

Что такое Zookeeper

Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…

2 месяца ago

Что такое Zimbra

Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…

2 месяца ago

Что такое Zabbix

Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…

2 месяца ago

Что такое YouTube

YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…

2 месяца ago

Что такое yota

Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…

2 месяца ago