В общем, имеется система уведомлений на сайте. В данной системе есть поддержка группировки некоторых типов уведомлений в одно, если выполняются определенные условия:
- Они должны быть соседями в списке (причем условие может изменится, на группировку по времени, или по положению (если есть в последних уведомлениях, в пределах скажем 10, такого же типа, то можно их сгруппировать) )
- Количество уведомлений в группировке не превосходит определенного количество( ну например, в одной группировке, должно быть не больше 50 уведомлений)
- У них должны быть одинаковые значения в группируемом поле
- У них должна быть одинаковая дата (группировка происходит только, если они произошли в один день)
Причем группировка идет снизу в вверх, то есть сначала группируются более старые уведомления, потом новые.
Сейчас все это реализовано с помощью Redis, но как известно редис не является стабильным хранилищем, так как данные содержатся в памяти.
Понятно, что такую логику очень сложно обработать в реляционных СУБД.Особенно в MySQL без использования костылей.
Какую СУБД лучше использовать для такой структуры?