I am building a social network natured web app. there are a number of related entitites like publishers, users, publications, posts, comments; with relations like subscribe, like, share, comment, friend, follow, work, author. Also as usual there is content of some of the entities lie contents of publications, posts, comments.
Publications and Posts are similar and just like classical social posts with more than one text or one media files. And Publications, Posts, and Comments will be ever increasing and will reach high numbers.
I plan to use Cayley db maybe dependence on Postgresql.
My so far complete tuples describing relations of entitites are so:
publisher -publish- publication
user -subscribe- publisher
user -comment- publication
user -like- publication
user -share- publication
user -post- post
user -friend- user
user -comment- post
user -like- post
user -share- post
publisher -follow- publisher
user -work- publisher
user -author- publication
The question is:
Where to store my posts/comments, which have also content such as one to many text fields and media files, and will be liked, shared, and commented by users?
Should I store posts/comments in graph database, if so should I store content or store only a reference and store content in another database, table or document? Regarding quantities of these entities will reach large numbers.