Redis - Open Source from Microsoft
Written by Kay Ewbank   
Friday, 27 April 2012

Microsoft’s new open source subsidiary has released its first offering - a new version of Redis for Windows.

When Microsoft recently announced it was starting an open source subsidiary called Microsoft Open Technologies, Inc., the news was greeted with a mix of suspicion and derision.

The fact Open Technologies is a subsidiary could be taken as a sign that Microsoft, despite having to acknowledge the existence and importance of Open Source, is still trying to keep it as a side-line to the ‘real’ work.

The suspicion takes the form of ‘NOW what are they up to?’

Microsoft’s official line is that while this is a subsidiary, all the major product groups within Microsoft work with open source.

As Jean Paoli said in a blog post about the new venture:

“It is important to note that Microsoft and our business groups will continue to engage with the open source and standards communities in a variety of ways, including working with many open source foundations such as Outercurve Foundation, the Apache Software Foundation and many standards organizations. Microsoft Open Technologies is further demonstration of Microsoft’s long-term commitment to interoperability, greater openness, and to working with open source communities.”

Paoli says that the existing Interoperability Strategy team will form the nucleus of the new subsidiary. The team has been working on open source options such as the ability to use Node.js, PHP and Java in addition to .NET in Windows Azure.

redis

The team has now announced its first release in the new company by way of a new version of Redis on Windows, the open-source, networked, in-memory, key-value data store.

Redis (REmote DIctionary Server) has been rising in popularity over recent years, and is probably more highly regarded than rival key-value data stores such as Cassandra. It was first developed by Sicilian developer Salvatore Sanfilippo, and would probably have stayed a minor player as Sanfilippo was working on it as a hobby, but VMware hired Sanfilippo to work on Redis full time and the project took off.

The advantage of Redis lies in the way it is used. Imagine you’ve got a database such as MySQL running as a backend server for storing and retrieving records. Your app becomes successful, and MySQL starts to struggle to keep up with the volume of data. You might think of incorporating something like memcached to give you an in-memory data cache to speed things up, but that really only gets you a store, and your back-end server still has to do handle all the queries and server-side operations. You end up coding to handle the interactions between the memory cache and the server, which means more work.

Redis gives you a key/value store that knows about server-side operations and comes with the most widely used query operators, so you get most of what you’d need in terms of querying data with the speed of the in-memory store.

On the Microsoft side, the major improvements in this latest version are around the need to save data on disk. Redis on Linux uses an OS feature called Fork/Copy On Write, but Windows doesn’t support this, so as Claudio Caldato, Principal Program Manager at Open Technologies blogged,

“we had to find a way to be able to mimic the same behavior without changing completely the save on disk process so as to avoid any future integration issues with the Redis code.”

Caldato says that the new Redis on Windows version implements the Copy On Write process at the application level. The team has added code to Redis so that some data structures are duplicated in a way that means Redis can still serve requests from clients while saving data on disk. This mimics the Fork/Copy On Write action in Linux.

Caldato says the code isn’t production ready, but is a prototype version to solicit feedback.

 

try redis

 

The code is on GitHub and if you want to find out more, check out the interactive tutorial Try Redis.

redis

More Information

Announcement of Microsoft Open Technologies

Redis on Windows announced

Redis

MSOpenTech Redis on Github

Try Redis

 

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 

To be informed about new articles on I Programmer, subscribe to the RSS feed, follow us on Google+, Twitter, Linkedin or Facebook or sign up for our weekly newsletter.

Banner


Mastering LLMs With Experts
22/10/2024

A freely available set of workshops and talks on the essentials of LLMs, taught by practitioners. The topics include Evals, Retrieval-augmented-generation (RAG), Fine-tuning etc.



Java Version 23 Released
30/09/2024

It was in April 2024 that we had Java 22. Now after just 6 months there's version 23, which is a STS release with lots of features in preview status.


More News

Last Updated ( Friday, 27 April 2012 )