Обратите внимание, что я впервые использую NoSQL, и почти каждая концепция является новой в этом мире NoSQL, будучи долгое время из RDBMS!Подход к модели данных Cassandra
В одном из моих тяжелых приложений я хочу использовать NoSQL для некоторой части данных и выходить из MySQL, где транзакции/реляционная модель не имеют смысла. Что я получу, C AP [Доступность и Толерантность раздела].
Данная модель данных проста, как это
ID (integer) | ENTITY_ID (integer) | ENTITY_TYPE (String) | ENTITY_DATA (Text) | CREATED_ON (Date) | VERSION (interger)|
Мы можем с уверенностью предположить, что эта часть приложения аналогична лесозаготовительной деятельности! Я хотел бы переместить это на NoSQL в соответствии с моими требованиями и отдельно от БД, ориентированного на производительность.
Cassandra говорит, что все в нем просто Map<Key,Value> type
! Думая о терминах уровня карты, Я могу использовать ENTITY_ID|ENTITY_TYPE|ENTITY_APP
в качестве ключа и хранить остальную часть данных в значениях!
После прочтения пользовательских типов в Кассандре я могу использовать UserDefinedType
как значение, которое по существу использует как один ключ, так и несколько значений! В противном случае используйте его как обычный уровень столбца без UserDefinedType
! Одна из идей состоит в том, чтобы использовать одну и ту же модель для разных приложений в системах, где это было бы простое ведение журнала/данные о деятельности, можно подталкивать к тому же, поскольку ключ варьируется от приложения к приложению и внутри приложения, каждый объект будет уникальным!
Никакой прикладной/бизнес-функции для доступа к этим данным без ключа или в простых выражениях не требуется получение данных случайным образом!
Ссылки: http://www.ebaytechblog.com/2012/07/16/cassandra-data-modeling-best-practices-part-1/