Я надеюсь, что кто-то, кто может мне помочь, предложит подходящую модель данных, которая будет реализована с использованием базы данных nosql Apache Cassandra. Больше, чем мне нужно, чтобы работать под большими нагрузками и большими объемами данных.
Упрощенный У меня есть 3 типа объектов:
- Продукт
- Тег
- ProductTag
Продукт:
key - string key
name - string
.... - some other fields
Tag:
key - string key
name - unique tag words
ProductTag:
product_key - foreign key referring to product
tag_key - foreign key referring to tag
rating - this is rating of tag for this product
Каждый продукт может иметь 0 или несколько тегов. Тег может быть присвоен 1 или многим продуктам. Средство связи между продуктами и тегами - это много-ко-многим в терминах реляционных баз данных.
Значение "рейтинга" часто обновляется "очень".
Мне нужно запустить следующие запросы
- Выбор объектов по клавишам
- Выберите теги для продукта, заказанного по рейтингу
- Выбрать товары по тегам по рейтингу
- Обновить рейтинг по product_key и tag_key
Самое важное - сделать эти запросы очень быстрыми на больших объемах данных, учитывая, что рейтинг постоянно обновляется.