Microsoft Makes The Extensible Storage Engine Open-Source
Written by Michael Larabel in Microsoft on 1 February 2021 at 06:13 PM EST. 45 Comments
MICROSOFT --
Microsoft's Extensible Storage Engine that has been in use for more than a quarter century and present since Windows NT 3.51 and Microsoft Exchange 4.0 is now open-source.

Microsoft has begun opening up the source code to the Extensible Storage Engine, a non-SQL database engine. The Extensible Storage Engine (ESE) is run in Windows client computers since XP through Windows 10, running on Office 365 Mailbox Storage Backend servers, used by Microsoft Exchange, and more. The ESE also plays a role with Active Directory and Windows Search among other use-cases.

The code was opened up at the end of this past week on Microsoft's GitHub. The page explains, "ESE enables applications to store and retrieve data from tables using indexed or sequential cursor navigation. It supports denormalized schemas including wide tables with numerous sparse columns, multi-valued columns, and sparse and rich indexes. ESE enables applications to enjoy a consistent data state using transacted data update and retrieval. A crash recovery mechanism is provided so that data consistency is maintained even in the event of a system crash. ESE provides ACID (Atomic Consistent Isolated Durable) transactions over data and schema by way of a write-ahead log and a snapshot isolation model."

ESE is further explained at docs.microsoft.com.

Before getting too excited, there is a lot of work before ESE could become a viable open-source project. For this initial code dump they decided to strip out all code comments. Given its long development history and wanting to ensure no internal secrets revealed or other salacious comments during the past 25 years, they have all been stripped out until they have been reviewed.

Additionally, there isn't any proper build system support with the current code but they are working to wire it up to CMake. Also, all of the ESE test cases are absent pending review. So for now the code is basically put out for informational purposes but ultimately should become build-able and useful to interested parties. Once everything is off the ground they intend to accept community code contributions at which point we'll see what comes of the Extensible Storage Engine as an open-source project.
Related News
About The Author
Author picture

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter or contacted via MichaelLarabel.com.

Popular News This Week