1
$\begingroup$

I am working with an organization to analyse their data residing in Mongodb and to look for any trends/patterns in the data. I am quite new to the professional field of Data Analysis but have a good background of Statistics and Data Mining (University coursework). I will be doing a proof of concept on the data to understand if the data the organization is gathering is good for Analytics and if no what enhancements should they include in their datasets to make it better for Analytics. I do have some predefined questions that I am planning to answer but looking strategically what would be a good way to approach this kind of problem.

I have previously worked with some of the Kaggle datasets and projects in University where datasets were fixed and questions to be answered were given.

$\endgroup$
1
  • 1
    $\begingroup$ Talk to the managers to understand their data-oriented business goals. $\endgroup$
    – Emre
    Commented Jun 22, 2016 at 20:14

2 Answers 2

1
$\begingroup$

@Emre makes a great point. You should probably ask the business what they're trying to accomplish because only then will you know which data matters. You don't want to waste time cleaning up data that has minimal importance to the business.

Regardless of the business objective though, it's worth pointing out that Mongo DB is a pretty poor choice for storing analytical data. There is no enforced schema, so each record might be in a completely different and unexpected format. You might have entire columns missing, maybe no columns at all, wrong data types, duplicates, and no way to get easy summary statistics like you would in a relational database. You're pretty much going to have to do a database dump of your MongoDB data and probably comb through your records semi-manually, looking for commonly occurring schemas and going from there.

Summary: MongoDB is great for operational data when all you want to do a quick lookup. It's a poor choice when you want to do any sort of in depth analysis on it though. Relational databases are better for analytical queries because the data is structured and also because you can more easily enforce data quality.

$\endgroup$
1
  • $\begingroup$ I agree that MongoDB is not a good choice for storing analytical data but it was a good choice when the product was designed previously. Analytical capability is a new requirement (just an idea so far) and I want to see if it is feasible. $\endgroup$
    – Rohan
    Commented Jun 23, 2016 at 17:32
1
$\begingroup$

Whatever business is behind this data, the biggest challenge is to try extract fields/keys that will bring valuable information.

This could be done by browsing data, get the schema and try to find deviations. As mongo uses dynamic schema this will give you possibility to observe different documents type in one collection - and can be source on valuable/invaluable data.

You can use robomongo or mongodb compass to have some data visualisation and get a grip.

Learning mongo aggregation framework and/or map reduce syntax is a must in such case.

Happy mining!

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.