Farid
Farid

Reputation: 1665

NoSQL databases (MongoDB) versus relational databases (MySQL)

I've been spending a considerable amount of time learning MongoDB as part of the MEAN stack (I'm new to the MEAN stack), and I feel like I'm just barely starting to get the hang of it. Recently, however, my supervisor at work (who's an experienced programmer) suggested I learn relational databases (it could be that it's used by more companies), and I have taken his suggestion to heart since I'm only a junior developer, and would like to move up soon. My personal goal/project is to build a social networking site where one group of users have the ability to search for another group of users (and most likely charge a membership fee). Would the database matter for a project like this? I would love to kill two birds with one stone by learning something (and learning it really well) that could be used in my personal project, and in a professional job.

I'm certainly open to learning more than one language, but I need a starting point, so I need something that will help me accomplish my personal goal. Since I've spent a considerable amount of time with JavaScript (as oppose to, say, Python), having to learn relational databases concerns me. Are there any downsides to just sticking to MongoDB?

Thanks in advance!

Upvotes: 0

Views: 854

Answers (3)

Paolo bi
Paolo bi

Reputation: 141

Well, anyone have concern about learn SQL (and use JOIN), but:
One day, you don't know how, you will use it (or understand it), so perhaps is better take a moment for SQL (it's the most widespread)

MongoDB is good if you development a REST service, but if you want make a social network like project, perhaps is better look at Graph database.


Perhaps that video can help, is an overview of SQL vs NoSQL.

Upvotes: 1

Insac
Insac

Reputation: 810

Farid, as you're a junior programmer, I'd suggest you to learn as much as possible of both approach.

The knowledge acquired on one of them will also help you getting the most from the other (as they both concern data, how to structure it and how to query it).

Also, in the day by day job (unless you specialize only in large sites where scalability is the first concern) you might encounter RDBMS more frequently than NoSQL choices.

Both technologies have pro and cons and, unless you know both sides (at least documenting yourself, if not by direct experience) you might go for one solution when the other could have been preferable.

Upvotes: 1

FDavidov
FDavidov

Reputation: 3675

The first thing you need is to assess what type of data you are going to deal with (will it be structured, easily represented by tables, or it will be more of the non-structured type).

If structured, RDBMS is the way to go.

Incidentally, as far as I know, the first versions of Facebook were implemented using MySQL (the type of DBMS your boss was referring to).

Upvotes: 2

Related Questions