SiSense Prism runs queries on data in-memory. That’s a phrase I’ve read, typed, heard, or spoken dozens of times in the past few months alone. But I often get the sense that less-technical folks have trouble deciphering why this is important, even if they’re experienced analytics types. Fortunately, breaking it down into a few simple points makes the benefits of in-memory analytics very clear, even to the most non-technical of audiences. (You can download a full-length breakdown of in-memory and related technologies here.)
All memory is not created equal. There are two types of memory to consider--RAM (random access memory) or disk. For pure storage purposes, disk beats RAM in almost every category; disk memory is cheap, abundant, and built for long-term storage. By contrast, RAM is more expensive and generally used for short-term storage only; your desktop or laptop probably has anywhere from 15-100 times as much disk storage as it does RAM.
The “random access” quality of RAM means data can be accessed in the same amount of time, regardless of the order in which it was added. So RAM is better suited to rapidly query (think “search”) data stored on one or multiple tables.
In-Memory does not mean Unlimited Memory. In-memory processing is designed to overcome the limitations of disk-based memory by letting RAM do all the heavy lifting of calculation and queries. So in-memory processing is much faster, but because it’s limited by available RAM, it’s best suited for smaller, less-complex data sets.
Elastic: It’s Not Just For Waistbands. Elastic in-memory is designed to be just that--scalable and comparatively flexible. Elastic processing still uses disk to store data, but stores it in a columnar schema (structure) rather than as tables, which makes it much faster to move this data to RAM for query processing. Only a small subset of the total dataset is stored in RAM at any given time, leaving more capacity for other operations.