Search code examples
mongodbrelationaldatabasenosql

NoSQL good solution for daily data?


I'm developing a restaurant application and there will be daily orders for particular guests. because of that daily base of data I thought to use a NoSQL Database e.g. MongoDB to avoid a lot of joins in a relational database (e.g. meal of an order for a particular day of a particular guest ). Other data like guest data (pre name, last name ....) would be stored in a relational database. What do you think? Is a NoSQL Database a good solution for that type of problem?

thanks


Solution

  • I would stick with a traditional RDBMS - unless this is a project to learn/understand MongoDB/other, a normal RDBMS is going to help you achieve what you want much more easily.

    Databases in the style of Mongo offer a number of advantages over traditional RDBMSs, but these advantages are only really in areas such as:

    • handling/processing immense (web-scale?) quantities of not-particularly-structured data
    • providing very very quick performance on cheaper hardware
    • providing easy clustering for maximum uptime

    The application you describe on the other hand is unlikely to need near-bulletproof uptime, and is also unlikely to need to process/store massive quantities of data quickly.

    Your data sounds very structured with clearly-defined relationships, and even a very busy restaurant is not going to produce the amounts of data that would justify sharding/clustering in the MongoDB style of things.

    So, unless you are looking for a project to help you learn MongoDB, I would recommend sticking with a traditional database.