Should I use mySQL or MongoDB

At the moment there is a lot of talk about NoSQL from my understanding that Mongodb is one of them, for me NoSQL seems to be that SQL is just not in the same sense that we know mySQL.

Think of it this way, they both store data, one does it using a fixed database with so-called restrictions, and the other stores data when it considers that the best time to store data and the assumption has no limits or very little.

However, this confuses web developers who make a switch or are thinking of making a switch. In my case, I work for a large telecommunications company, and to make such an approach is something that we really need to look at, and we cannot convey something that does not have a physical being, so to speak.

Maybe I don’t understand the meaning of NoSQL, maybe I have the right value.

Now I am in the process of rewriting the entire CMS that we use, and it would be nice to know if it is worth spending time looking at noSQL or supporting MySQL (which does not seem to have any problems, moment)

We have only 5,000 rows in the client’s details, and in the backup with 14,000, he gets a backup, just makes the main table decide to screw it on.

+7
source share
3 answers

MySQL will not be a problem with such data. NoSQL db are for large datasets, and they are completely different (everything you can do in NoSQL, you can also do in sql db).

In addition, NoSQL is much more difficult to administer. Cassandra needs the right configuration to be faster than regular MySQL db, if not much slower (and even then you may have few problems with it). And for most NoSQL, you need a VPS / dedicated hostage.

+3
source

Are you forced to choose one or the other? If not, then why limit potential solutions to meet your business requirements by doing 'this' or doing this. I equate the steps of a software development workflow with those doctors.

The doctor must make a number of decisions to ensure successful work. This includes diagnostics, determining cut points and selecting the necessary tools for their trade; scalpel, bone saw, etc., to complete the operation. If you told your doctor that they can only perform surgery with a crossbow, the end results will not work well for the patient or doctor (negligence).

So, shying away from the awkward analogy, here are a few reasons why I prefer to use both options (for example, using an online bookstore):

  • Literal data, such as ISBN, author names, published dates, etc., are stored in the DBMS (say, in MySQL). By storing this data type in MySQL, I can run any number of queries for presentation to the user. For example, I can run a query that returns you all books published by authors whose last name matches the letter Z and the publication date of 2005, sorted by their ISBN. This type of data manipulation is crucial when creating useful features for your company (or customers).

  • Reserve assets, such as cover art, are stored on the file system using NoSQL. This solves two problems. First of all, I don’t want voluminous data populating my MySQL database (blobs), so I will store this data in the file system. And secondly, the cover of the book has nothing to do with any actual book data (do people really want all books with blue color in the cover?). And we simply can’t refuse the cover of the book, as this can make or disrupt the sale when a user views our online resource.

In conclusion, I recommend that you select all the necessary tools for the successful completion of the operation and thus simplify the addition of new features in the future.

+11
source

NoSQL databases are worthy of some appreciation, but they have a niche that they are comfortable with, and they are not 5000 row CMSs.

I think you should stick with a proper SQL based relational database. You may find PosgreSQL a better choice than MySQL, but you will have to evaluate it yourself 1 .

1 There are many resources for this, for example: http://www.wikivs.com/wiki/MySQL_vs_PostgreSQL .

+1
source

All Articles