I'm a data scientist with little knowledge of DB technology. I keep hearing 3 types of databases mentioned as key technologies for analytics and modeling solutions:
- NoSql databases
- OLAP cubes
- In-Memory databases
NoSql seems to be anything that isn't relational, so in theory pure OLAP cubes would qualify as NoSql (pure OLAP, not star-schema ROLAP).
But at the same time, I heard a discussion recently by an Oracle engineer about how Oracle spent 2 years trying to convert one of its pure OLAP solutions into NoSql and failed, and that had me confused - if NoSql is anything that is non relational, then it seems to me that pure OLAP is already NoSql, so how can they convert it to NoSql?!?
On a similar note, I hear In-Memory mentioned often as a type of Database that is popular for analytics and modeling solutions, but In-Memory seems to refer to the hardware architecture (using RAM instead of Disk for storage) as opposed to a specific way of representing the data, which seems to me like the key factor in determining whether a database technology is suitable for analytics or not.
So my question is: Are these concepts mutually exclusive or not? Can an OLAP cube be NoSql and in memory as well?
If so, what are some examples?