Click here to Skip to main content
15,846,211 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Since I wasn't that clear in my last question, I decided to rewrite it with some info this time.

I plan to create a social network with a feed like tweeter's, I planed to use MySQL at first but knew I would need something more 'specialized' for big systems. I decided it would be HBase because of it's BigTable schema that best suits the tweeter-style feed I want.

The Solution I came up with:

I would have all the user's static information(that doesn't change as much as a post for example) and the User relation with other entities(Groups & followers) in MySQL and the Feedback service in HBase.

For example my system has a many-to-many relationship from 'users' to 'groups' table (One user might be subscribed to many groups and one group might have many subscribers); when new content is posted on a group I could rapidly retreive a list of users following that group from the intermediate table in the relationship and in HBase make the actual data insert in the feed with the corresponding user-key in a 'fan-out on write' manner. This way MySQL can handle what is best for(relationships), and HBase will only make the data delivery(and what it implies: comments, likes, etc.) based on a key list.

This way if a relationship changes or it's deleted(User stops following someone) HBase doesn't receive the key and no information is written on that user's feed.

I would like to know what would be your approach? And the problems you might see in mine
Updated 6-Mar-14 17:49pm

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900