Академический Документы
Профессиональный Документы
Культура Документы
● Критиковать RDBMS
● Топить за NoSQL
● Агитировать всех использовать Кассандру
ПОЧЕМУ?
ЧТО ТАКОЕ NoSQL (от англ. not only SQL
— не только SQL) — термин,
NoSQL обозначающий ряд подходов,
направленных на реализацию
систем управления базами
данных, имеющих
существенные отличия от
NoSQL это: моделей, используемых в
традиционных реляционных
СУБД с доступом к данным
● Отсутствие жесткой схемы данных средствами языка SQL.
Применяется к базам данных,
● Отказ от атомарности и согласованности в которых делается попытка
решить проблемы
в пользу горизонтального масштабируемости и
масштабирования доступности за счёт
атомарности (англ. atomicity) и
согласованности данных (англ.
consistency).
(с)
Wikipedia
КЛАССИФИКАЦИЯ NoSQL ХРАНИЛИЩ
Database = Keyspace
Column Family = Table
ПРЕИМУЩЕСТВА
Consistency Level
ANY Начальный Сервер (Hinted
Handoff)
ONE Одна реплика
BigTable
ЧТЕНИЕ ДАННЫХ
С точки зрения клиента / кластера
Consistency Level
ONE Одна реплика
● Поддерживается из коробки
● “На ходу” можно добавить ноды
● Миграция выполняется в фоне
МАСШТАБИРОВАНИЕ
benchmark:
Ни одной ошибки!
Cassandra Query Language
Для клиента:
● Глобальная распределенность
● Линейная масштабируемость
● P2P архитектура (нет мастера и слейва)
● Молниеносная запись
● Быстрая выборка по ключу
КОГДА СТОИТ ЗАДУМАТЬСЯ ОБ ИСПОЛЬЗОВАНИИ
чего-то другого
Когда вам нужно будет использовать что-то из списка ниже, даже не пытайтесь
смотреть в сторону Кассандры, вы будете несчастны.
● Системы трекинга
● Логирование транзакций: покупки,
просмотры, оценки, клики
● Сохранение данных Health трекеров
● IOT история ивентов и состояний
Cassandra + Java + =
● Трансляция исключений
● Удобные QueryBuilder’ы
ВРЕМЯ ДЛЯ ПРИМЕРА
● https://habr.com/ru/company/lifestreet/blog/146115/
● http://profyclub.ru/docs/172
● https://habr.com/ru/post/258581/
● https://blog.panoply.io/cassandra-vs-mongodb
● https://blog.pythian.com/cassandra-use-cases/
● https://www.ibm.com/developerworks/ru/library/os-apache-cassandra/index.html
● https://blog.bissquit.com/dbms/apache-cassandra/apache-cassandra-zapis-dannyh-chast-3-sstable/
● https://habr.com/ru/company/oleg-bunin/blog/417617/
● https://tech.ebayinc.com/engineering/cassandra-data-modeling-best-practices-part-1/
● https://tech.ebayinc.com/engineering/cassandra-data-modeling-best-practices-part-2/