A Classification of in-memory datastores for BI, DV and other analytical tools was suggested by VP of Forrester Mr. Boris Evelson. He listed 11 DV Vendors (Qliktech, TIBCO, Microsoft, IBM, SAP, SAS, Actuate, Microstrategy, Endeca, Advisor Solutions, Tableau) who attempted to implement in-memory datastore for their DV Tools:
1. In-memory OLAP (MOLAP cube loaded entirely in memory)
- Vendors: IBM Cognos TM1, Actuate BIRT.
- Pros: Fast reporting, querying and analysts since the entire model and data are all in memory. Ability to write back. Accessible by 3rd party MDX tools (IBM Cognos TM1 specifically).
- Cons: Requires traditional multidimensional data modeling. Limited to single physical memory space
2. In-memory ROLAP (ROLAP metadata loaded entirely in memory)
- Vendors: MicroStrategy
- Pros: Speeds up reporting, querying and analysis since metadata is all in memory. Not limited by physical memory
- Cons: Only metadata, not entire data model is in memory, although MicroStrategy can build complete cubes from the subset of data held entirely in memory. Requires traditional multidimensional data modeling.
3. In-memory inverted index. (Index (with data) loaded into memory)
- Vendors: SAP BusinessObjects (BI Accelerator), Endeca
- Pros: Fast reporting, querying and analysts since the entire index is in memory. Less modelling required than an OLAP based solution.
- Cons: Limited by physical memory. Some index modelling still required. Reporting and analysis limited to entity relationships built in index
4. In-memory associative index. (An array/index with every entity/attribute correlated to every other entity/attribute)
- Vendors: QlikView, TIBCO Spotfire, SAS JMP, Advizor Solutions (also OEMed by Information Builders)
- Pros: Fast reporting, querying and analysis since the entire index is in memory. Less modelling required than an OLAP based solution. Reporting, querying, analysis can be done without any model constrains, for example any attribute can be instantly reused as fact or as a dimension. Every query with an inner join can also show results of an outer join on every column.
- Cons: Limited by physical memory. Some scripting/modelling still required to load the data
5. In-memory spreadsheet as DB engine, known as VertiPaq. (columnar DB behaves as a Spreadsheet table or array loaded entirely into memory. )
- Vendors: Microsoft (VertiPaq technology used by PowerPivot and SSAS)
- Pros: Fast reporting, querying and analysis since the entire spreadsheet is in memory. No modelling required. Reporting and analysis are as simple as sorting and filtering a spreadsheet
- Cons: Limited by physical memory
I have to add here: only Qlikview, PowerPivot, Spotfire and Tableau are implemented in-memory Data Engine (in case of Qlikview and PowerPivot it is Columnar Database, Spotfire has similar functionality too) and as a result they are far ahead of other DV Tools. Also I have to add that Tableau 6.0 has new and fast in-memory data engine.
Also some in-memory database systems are designed without BI as a main target and can be used for any other purposes like transaction processing, data collection, ETL etc., e.g. SAP/Sybase Adaptive Server Enterprise, IBM SolidDB, SAP HANA etc.