Hal Berenson, the General Manager of what would become WinFS wrote an excellent four-part blog series after Bill Gates disclosed in 2013 that his biggest regret from his time at Microsoft was the failure to deliver WinFS:
Q. What one Microsoft program or product that was never fully developed or released do you wish had made it to market?
A. We had a rich database as the client/cloud store that was part of a Windows release that was before its time. This is an idea that will remerge since your cloud store will be rich with schema rather than just a bunch of files and the client will be a partial replica of it with rich schema understanding.
The short version is that it while it difficult to pull off, the challenge was to get the Exchange team to use it. They were going to be the test case. Except Object File System (OFS, aka Integrated Storage, aka Cairo, aka WinFS) wasn't ready yet. Microsoft had just bought SQL Server from Sybase, and were also creating an entirely new database engine internally from scratch: Jet Blue. Does the Exchange team wait for Cairo? Do they move to SQL Server? Do they switch to Jet Blue?
In a meeting with Bill to decide the direction for Integrated Storage he had to choose between two options. One was the technology base that he thought was the right one for the long-term vision of Integrated Storage, but it was a store with no one committed to use it. The other was a solid plan and commitment to deliver something that unified the unstructured and semi-structured worlds within Microsoft. Bill chose to let the Exchange-based plan proceed, but also encouraged us to continue to work on SQL Server as the basis for a future Integrated Storage solution.
Exchange team went ahead and used JetBlue. The free database engine that ships with Windows, and has a publicly supported API. JetBlue, aka Extensible Storage Engine, is the database that powers:
- Windows Search
- Active Directory
- Windows Updates
And in a vein similar to WinFS and data storage, Hal also had an excellent blog on the history of OLEDB, the visions, the promises, and how OLEDB really does solve problems that exist:
Along with SQL Server team's announcement that they're ending support for the OLEDB native client.