This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I am new to the world of non-relational database and I look for some advices on how to start.
I need to have table that represents system being optimized. It should have some columns with input data (some of those are common for all systems and some are specific for the system so I know all the columns I need to use not earlier than when I need to create first row in database) and output data (columns are always the same).
I need to be able to visualize the data being stored, i.e. dynamically search for rows where input parameters are known (for example first column is equal to abc and second column is between 15 and 20) to be able to receive corresponding output values (several last columns).
I thought about using MongoDB because it has the best support and is the most widely used non-relational database. Please enlight me if it is good choise or I need other NoMQL (which one?).
I have started with creating some simple code:
this is why I started wondering if it is good to use MongoDB or if I do something incorrectly. Definitely adding row as "first entity" is not OK because I would need something like ID here. And using foreach later is perhaps not needed at all, based on earlier lines of the code.
Class with data looks as follows:
Could you give me any suggestions how I should proceed with my case?