DEV Community

Legion555
Legion555

Posted on

MongoDB Atlas vs Firebase

Hi everyone
I'm trying to create an application that requires a backend database and I'm uncertain which service to use.
I heard that both MongoDB Atlas and Firebase are good for those who aren't knowledgeable in creating backends.

Which service would you recommend?

Any advice is greatly appreciated.

Top comments (7)

Collapse
 
akmanidis profile image
Giannis Akmanidis • Edited

Hello @legion555

I will try to answer to give a fast answer rather than get into much of details, hope it will help.

Both tools are great at what they do.
Firebase is not only just a database... it is a database, a user auth mechanism and a data hosting solution in one package.

The database part is fast, real time fast, but the queries are rather simple (no aggregation etc...). I personally find document management clunky.
If you plan to go to China … you will have problem with google products...
(i think???)

MongoDB Atlas on the other hand is a manage solution for MongoDB which is the database (you don't need Atlas to run MongoDB). Database wise, it is considered also fast (not real time), it is reliable and scalable.

Both of the databases are collection - document based. So you need to verify that your data will fit that description.

Apart of the above the main point is that both solution are great when your queries are well build and optimized to harness the pros of both databases.

That means you need experience and know how. If you just thing to push a button and everything will work as you expect, probably that will not happen.

to answer directly the question
"Which service would you recommend?"

None, if you don't have the know how or you don't take time to familiarize with both. Rather go with a database system you are already familiar with.

Both, if you can take your time and learn.

As a general rule i would suggest to make a quality assessment of your project regarding database needs and then simply make a check mark evaluation sheet. Then you can safely pick up a solution and maybe even a combo of different DBs and remember to go with what makes you more comfortable to work with and then steady upgrade/modify accordingly.

But always keep pushing minimal viable versions otherwise your project will never finish.

Collapse
 
zenventzi profile image
Zen Ventzi

Speaking of China, Firebase is the least of your problems :D

Collapse
 
legion555 profile image
Legion555

Thank you very much.
Your answer has given me greater insight.
I will look for alternative database solutions for now.

Collapse
 
akmanidis profile image
Giannis Akmanidis

what is your app about?

Thread Thread
 
legion555 profile image
Legion555

For now I'm just trying to implement a backend on a to do list for my main project.
My main project is a student managment system for English centers in Vietnam to monitor a student's performance. Therefore it would have to scale well if multiple centers use it.
I'm an English teacher in Vietnam, that's why it's for the Vietnamese market.

Thread Thread
 
akmanidis profile image
Giannis Akmanidis

Personally I would go with mongoDB for your case.
And later I would combine it with Elastic Search to improve text search
Best of luck

Thread Thread
 
legion555 profile image
Legion555

Thank you very much for your advice. I started delving into MongoDB today. I believe it will be a great addition to my project.