Ok I got your point behind not using Mongodb. But the project is similar to facebook and facebook uses graph. So, what advantage can one get by using graph. And why shouldn't I use graph for this project. In this project, users will post status updates too and those updates will have tags. So think of a share model that has like 5 tags. So, should I create a tag model and then a share has many tags, or is there a better solution?
On Friday, 13 September 2013 14:46:32 UTC+5:30, Peter Hickman wrote: > > On 12 September 2013 16:44, Yash Ladia <ladi...@gmail.com <javascript:>>wrote: > >> Thanx for your reply.My problem is that at a later point of time this >> would account for very large data set as the users will increase. I want to >> optimize my website and want to save time on data query from the >> database.Also, i will be looking for similar user profile based on user's >> attribute like(taste in music,movies,interests etc).I want this to be done >> very efficiently and in a proper manner so that there is less complexity in >> writing the code. >> > > Having a large amount of simple data is not the same problem as having > complex data. If all you are storing is key value pairs you could have a > table like this > > class Interest < ActiveRecord::Migration > def change > create_table :interests do |t| > t.integer :user_id, :null => false > t.string :type, :null => false > t.string :value, :null => false > t.timestamps > end > end > end > > And you would store it as: > > Interest.create(:user_id => user.id, :type => 'music', :value => 'Status > Quo') > Interest.create(:user_id => user.id, :type => 'movie', :value => 'The > Color Purple') > Interest.create(:user_id => user.id, :type => 'hobby', :value > => 'Fishing') > Interest.create(:user_id => user.id, :type => 'food', :value => 'Cheese') > > and have a has_many link from the User model to retrieve the data. This > sort of data is exactly what an RDBMS is best suited for. Of course if it > is just key value pairs then something like Redis is also a good tool too. > > MongoDBs strength is document storage for unstructured data. The problem > is that the data you have is neither a document nor unstructured. This is > not to say that you cannot store key value pairs in MongoDB but it is not > the best tool for the problem you describe. > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscr...@googlegroups.com. To post to this group, send email to rubyonrails-talk@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/da824b8f-36ea-4f05-8edf-223381e02b3c%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.