I am working creating api for activity feed of user. Feed contains different type of entities.
Before that let me give you bit overview about the app. Its a video app where Users can ask questions then we show results of matched solution. If user watches any of video from matched solution. we show that in feed (all users can view this). User can like or comment on this entity.
Currently i am generating feed data by aggregating different tables in mysql but this is not very scalable. This method is very slow.
Now, I am thinking of generating feed at the time of when user watches the video then save it in another mysql server dedicated to feed data.
I am running to few problems here :
- It is user customized feed as we show that if user is commented or liked or not (
is_commented). Should i save feed data at student level???
- If i save it as student level.That data will going to be very huge. which database is best suited. I have read that cassandra is best suited for this type of data or just Mysql+redis just work???