prassee
prassee

Reputation: 3629

Is NoSQL is suitable for Social Networking kind of applications

I am planning to develop social networking app, I want to try a NoSQL solution can any one suggest is NoSQL is a suitable choice for developing these kind of applications.

Upvotes: 11

Views: 14240

Answers (9)

SuperUberDuper
SuperUberDuper

Reputation: 9633

Coming at this in 2020, most definitely don't. Its a nightmare

Upvotes: 1

Daniel Vigueras
Daniel Vigueras

Reputation: 361

NoSQL is a perfect solution when designing social network apps. Probably developing your social network with MySQL may be easier at start, but later, when the app grows and the number of users grows too you will have to think how to manage a MySQL cluster, dealing with master-slave configs, etc. And that will be a big problem. With a NoSQL solution (I would recommend you MongoDB, this is the best from my point of view) you can just install new servers and create shards of your database. The horizontal scaling process will be very easy.

Upvotes: 0

Wilfred Springer
Wilfred Springer

Reputation: 10927

If you are mainly interested in navigating the network relationships, then I think it's fair to say that graph databases such as Neo4J and InifiteGraph are worth checking out. (Constant time navigation of links in the network.)

Upvotes: 3

pingw33n
pingw33n

Reputation: 12510

Take a look at Diaspora it uses MongoDB and Redis.

Upvotes: 0

Goran Jovic
Goran Jovic

Reputation: 9508

Based on the fact that most well known social networks already use non-relational databases of some kind, I'd say that it is suitable (either that or all of them are terribly terribly wrong :D)

In my opinion, a good candidate for NoSQL use is any system that deals with large (and I mean large) amount of user-generated data, such as social networks, tracking systems and such..

But, as others already said, a this or that technology won't make up for crappy design. So, when building anything that will have to scale well, I'd start from design and then look for a decently stable and documented technology that supports it. And if it is a non-relational database, so be it.

Upvotes: 1

olle kullberg
olle kullberg

Reputation: 6247

Check out Neo4J ( http://neo4j.org/ ), a graph DB.

Upvotes: 0

Brian
Brian

Reputation: 6450

Good overall architecture and design is many times more important than simply picking a data technology; the latter won't magically make your site work. But yeah many of the leading NoSQL technologies would work fine, if your app design is good enough.

Upvotes: 7

Marcelo Cantos
Marcelo Cantos

Reputation: 185980

Firstly, NoSQL isn't a product or even a model. It's just a general catch-all phrase for any non-SQL data store.

NoSQL data stores are probably not suitable for a social networking app. Most of them won't even do a JOIN on your groups and members.

Upvotes: 1

Related Questions