In-Memory Databases are very near to becoming widely adopted, says David Campbell of Microsoft in his article “The coming in-memory database tipping point”. He also explains Microsoft’s strategy around this space.
According to David, following trends will combine to make In-memory databases common in 5 years -
- Bandwidth and capacity (Hard disks, RAM) tend to increase much faster than reduction in latency
- Multi-Core CPUs that need to be used effectively
- Ability to randomly access small amounts of data on disk not improving in pace with sequential bandwidth of reading from disk
Leading to new design approaches by database designers -
- Compression to hold more data in RAM – decompressing data when needed tends to take lesser CPU cycles than reading it off the disk, by several orders of magnitude
- New Database algorithms – for e.g. Column based approaches v.s. the traditional row based approaches, to spread load over multi-core systems
Gartner has identified in-memory computing as one of the emerging trends in their research paper, “The Top 10 Technology Trends for 2012”. Other vendors too are already positioning themselves to cater to this market – SAP for instance with its’ HANA platform, and Oracle with it’s TimesTen product.
What is Microsoft doing to ride this trend? David explains -
We have created a column based storage engine which ships as part of the “PowerPivot” add-in for Microsoft Excel. In SQL Server 2012, this ships as the xVelocity in-memory analytics engine as part of SQL Server Analysis Services.
Our technical approach considers not only best-in-class capability but how to integrate and deliver as a part of a complete data platform – ultimately the highest value for customers will be achieved this way.
In-memory databases are not new in terms of technology – we already have several popular persistent and transient databases such as Redis and Memcached being used for caching or low-latency data-access. However even traditional relational database providers catering to Enterprise customers are now taking in-memory computing seriously, which is interesting to observe.