Microsoft's Open-Source Subsidiary Releases First Deliverable
Microsoft has announced the release of an updated version of the Redis on Windows, the first deliverable from the company's Microsoft Open Technologies subsidiary.
Redis is an open-source, networked, in-memory, key-value data store with optional durability. It is written in ANSI C. The development of Redis is sponsored by VMware. In a blog post, Claudio Caldato, principal program manager for Microsoft Open Technologies, said the units first deliverable is a new and significant iteration of Redis on Windows.
The major improvements in this latest version involve the process of saving data on disk, Caldato said. Redis on Linux uses an OS feature called Fork/Copy On Write. This feature is not available on Windows, so 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.
Thus, the new version of Redis on Windows implements the Copy On Write process at the application level: Instead of relying on the OS, Microsoft added code to Redis so that some data structures are duplicated in such a way that Redis can still serve requests from clients while saving data on disk (thus achieving the same effect that Fork/Copy On Write does automatically on Linux), Caldato said.
Developers can find the code for this new version on the new MS Open Tech repository in GitHub, which is currently the place to work on the Windows version of Redis as per guidance from Salvatore Sanfilippo, the original author of the project, Caldato said.
We will also continue working with the community to create a solid Windows port, he said. We consider this not to be production-ready code, but a solid code base to be shared with the community to solicit feedback: as such, while we pursue stabilization, we are keeping the older version as default/stable on the GitHub repository. To try out the new code, please go to the bksavecow branch.
Meanwhile, in the next few weeks, Microsoft plans to test the code extensively so that developers can use it for more serious testing, Caldato said.