Сначала я начал изучать Кассандру, потому что динамические колонки привлекли мое внимание. Когда я начал учиться больше, я узнал, что составные первичные ключи предпочтительны для динамических столбцов, а Cassandra переходит на схему (схема является необязательной и не обязательной, но рекомендуется). В cql3 он является обязательным, хотя и я читаю, что cql3 - лучший подход для новых приложений в cassandra.
Вот где я столкнулся с интересным вопросом. Я читал конкретный слайд (Mysql vs Casssandra) - http://lanyrd.com/2012/austin-mysql-meetup-january/spdrx/ (переход на 31 слайд), где в нем обсуждается случай использования обнаружения мошенничества.
"В FraudDetection Чтобы рассчитать риск, обычно нужно знать все электронные письма, адресаты, происхождение, устройства, местоположения, номера телефонов и т.д., которые когда-либо использовались для соответствующей учетной записи."
Было объяснено, как мы должны поддерживать отдельную таблицу для писем, мест назначения, происхождение и т.д. в реляционном мире и как легко быть в мире cassandra с динамическим столбцом и значениями. (31- 34 слайдов).
Теперь, когда динамические клавиши столбца и значения и обескуражены, как мы можем решить эту проблему? Должны ли мы поддерживать отдельные семейства столбцов для каждого письма, адресатов и т.д.? Тогда как он отличается от реляционного мира? Это только о масштабируемости? Можем ли мы по-прежнему придерживаться схемы с меньшим подходом? Является ли это золотым правилом? Схема является необязательной и рекомендована, но не обязательна?
Спасибо