Я надеюсь, что есть кто-то, кто может помочь мне предложить подходящую модель данных для реализации с использованием базы данных nosql Apache Cassandra. Больше, чем мне нужно, чтобы работать при высоких нагрузках и больших объемах данных.
Упрощенно У меня есть 3 типа объектов:
Продукт:
key - string key
name - string
.... - some other fields
Метка:
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
Самое главное, чтобы эти запросы выполнялись действительно быстро на больших объемах данных, учитывая, что рейтинг постоянно обновляется.