Wednesday, May 09, 2007

SQL Server "Katmai" to Deliver Entity Data Platform and Support LINQ

Microsoft's announcement this morning that 2008 is the target release date for SQL Server "Katmai" (presumably SQL Server 2008) might explain why the ADO.NET team dropped the Entity Framework (EF) from Visual Studio "Orcas" and postponed EF's target release date to the "first half of 2008."

Mike Pizzo, an Architect on the Data Programmability team, announced that EF was cut from Orcas in an April 28, 2007 (Saturday) post, ADO.NET Entity Framework Update, which contained the following blurb about the Entity Data Model/Platform and a teaser for the "Astoria" and "Jasper" incubator projects:

Microsoft will be leveraging the Entity Data Model in future versions of Microsoft products such as SQL Server. This Data Platform vision enables customers to leverage their investment in a common conceptual entity model across product lines. Stay tuned for announcements starting next week at Mix around new products building on the ADO.NET Entity Framework. [Emphasis added]

In his  Microsoft's Data Access Strategy post that followed the announcement by three minutes, Mike asks "Does Microsoft have a Data Access Strategy?" and then gives the following answer:

Yes, it turns out we do. Microsoft envisions an Entity Data Platform that enables customers to define a common Entity Data Model across data services and applications. The Entity Data Platform is a multi-release vision, with future versions of reporting tools, replication, data definition, security, etc. all being built around a common Entity Data Model. [Emphasis added.]

Update: 5/25/2007: As an IBM senior executive used to say, "Vision without execution is hallucination." (From the Microsoft Architectural Journal's "Architecture Journal Profile: Don Ferguson" interview. Don Ferguson is a former IBM Fellow who moved to Microsoft as a Technical Fellow in early 2007.)

The newly released SQL Server Code Named "Katmai" data sheet's "Develop with Entities" section says:

As part of the next generation of the ADO.NET data access framework, developers will be able to access their data by defining business entities like Customers, Orders and Products instead of tables and columns using the Entity Data Model. Query and retrieve these entities natively within any .NET language with the introduction of LINQ. These services enable developers to work within the logical entity model while administrators can define the physical implementation of the model as tables and columns. [Emphasis added.]

According to InformationWeek's May 9, 2007 Microsoft Gives Peek At Next Version Of SQL Server article by J. Nicholas Hoover from the first Microsoft Business Intelligence Conference 2007:

The next SQL Server also will include the "entity data platform," ostensibly the ADO.Net entity framework,which makes it so. [I]nstead of having to deal with raw data in a relational table, developers can easily deal with data on an object level—for example, as a customer or product object—regardless of whether the information and data that defines the object is in multiple tables.

There also will be support for Language Integrated Query, or LINQ, which simplifies the process required for developers to query databases.

Katmai additionally will introduce a technology called "occasionally connected systems" to provide core services that allow developers to synchronize devices with data whenever they're connected to a network. [Emphasis added.]

Mary Jo Foley's May 10, 2007 Making sense of Microsoft’s myriad database projects post to her All About Microsoft blog quotes Francois Ajenstat, director of SQL Server:

At the core of these different data-programmability projects is the concept of a common entity data model. EDM — a way of describing entities and their relationships — isn't new; it has been used by database programmers for more than 30 years. Ajenstat described EDM as a way of allowing programmers to program at a logical level, instead of a physical level.

Microsoft is building an entity data model framework around its ADO.Net technology that is designed to raise the level of abstraction for database programmers. Up until recently, the ADO.Net Entity Framework was slated to be part of the first release of Visual Studio Orcas; now the entity framework won't be released until some time in 2008, as a post-Orcas update to the .Net Framework, Ajenstat confirmed.

Microsoft's goal is to enable LINQ, its Language Integrated Query extensions to the .Net Framework, to query the new ADO.Net Entity Model. Microsoft wants to simplify SQL Server developers' lives by freeing them up from having to understand SQL the language, said Ajenstat.

Paul Flessner, then Senior Vice President of the Server Applications, alluded to support for LINQ in his SQL Server 2005 Update of April 6, 2006 with the following sentence under his "Beyond Relational" topic:

We will strive to deliver the best platform for integrated storage, and advanced applications such as spatial data, while also making it dramatically easier for you to build data-driven applications, without needing to invest significant resources in bridging the gap between data and programming language data structures. [Emphasis added.]

Katmai and Entity Framework Dependencies?

CRN's Barbara Darrow wrote the following two days before EF's Orcas swansong:

Microsoft may synchronize its "Longhorn" Windows Server release with its promised SQL Server and Visual Studio updates, even if that means delaying Longhorn's availability slightly, CRN has learned.

I doubt very much that Longhorn will have dependencies on SQL Server and Orcas, or vice versa. However, EF might end up with a dependency on Katmai, despite Mike Pizzo's insistence that EF will have:

The ability to query relational stores other than the Microsoft SQL Server family of products.

Without Orcas as a release vehicle, EF is an orphan. Will Katmai adopt EF as an SQL Server toolset and delay EF's debut to the Katmai RTM date?

Update 5/23/2007: According to a comment to a blog post by ADO.NET team member Andrew Conrad, "Katmai (next version of Sql Server) for the Entity Framework is a ship vehicle." [Emphasis added.]

Mike Pizzo was adamant about the delayed EF shipping in the 2008H1. Here's his committment in ADO.NET Entity Framework Update:

Based on the need to align with requirements from key internal partners that are building on the Entity Framework, along with the need for a better tool experience, we have decided to ship the ADO.NET Entity Framework and Tools during the first half of 2008 as an update to the Orcas release of the .NET Framework and Visual Studio.

and in Microsoft's Data Access Strategy:

A few months after the shipment of Orcas, and within the first half of 2008, Microsoft will release the ADO.NET Entity Framework as an extension to the Orcas version of the .NET Framework.

Stay Tuned

There's more coming from Christian Kleinerman's A First Look at SQL Server codename ‘Katmai’ Database Engine presentation on Monday, May 8, 2007 at SQLLive! Orlando that promises:

[A] high level overview of some of the enhancements to the relational database engine in SQL Server code name "Katmai".

and Ted Kummert's keynote on Thursday, May 10, 2007, which should shed more light on Katmai's Enterprise Data Platform, LINQ, and OCS (synchronization) features. Kummert took over Paul Flessner's duties in October 2006. According to Mary Jo's post:

All of what Microsoft lumps under "data programmability" falls under the domain of Ted Kummert, the Microsoft Corporate Vice President in charge of the data and storage platform division, Ajenstat said.

Update 5/15/2007: Microsoft posted a Webcast of Ted Kummert's keynote, and Podcasts of interviews with Francois Ajenstad, Director of Product Management for Microsoft SQL Server and Ram Ramanathan, Senior Product Manager for Microsoft SQL Server Data Warehousing and Data Integration. Arjenstad says there will be a "CTP of Katmai coming out shortly, probably within the next month" (see Katmai CTP Scheduled for June.)

Here's an excerpt from Mark Whitehorn's The four pillars of Katmai report of May 11, 2007 for the Reg[ister] Devloper:

Dynamic development. Ted talked about a fascinating development in Katmai, the introduction of an ER modelling layer. This provides a logical layer which sits between application developers and the relational tables – allowing them to interact with the data more easily.

Fans of ER modelling will want to know that this is not (at least in Katmai) a design tool – you cannot develop an ER model and then generate the schema. However, Microsoft sees this as a first step and there is a strong possibility that design capabilities will appear in later versions. Database engines in general have been crying out for this kind of functionality for years so this first tentative step is very welcome.

Mark and Seattle Post-Intelligencer reporter Todd Bishop, along with other members of the trade press, were excluded from Steve Ballmer's Friday keynote. Here's a long story from Mark and a briefer report from Todd. I'd characterize the exclusion as a very unwise attempt at a commercial version of prior restraint.

Update 5/15/2007: Microsoft posted a Webcast of Steve Ballmer's keynote, so the preceding tempest in a teacup is moot.

Update 5/14/2007: Added excerpt from SQL Server 2005 Update from Paul Flessner of April 6, 2006, The four pillars of Katmai report of May 11, 2007, and stories about the Steve Ballmer keynote fiasco.

Update 5/11/2007: Patrice Luong's detailed post from the Microsoft BI Conference didn't mention the Entity .

Update 5/10/2007: Added links to Mary Jo Foley's post.

Related OakLeaf Posts

Entity Framework

Occasionally Connected Systems, Sync Framework/Systems, and Sync Designer

1 comments:

Anonymous said...

We at my office are pumped for the eventual SQL Server 2008. While I believe the 2005 edition to be the best yet I’m hoping that 2008 brings with it some new tools that will help us get our networking running smoother than ever before. Though 2005 is decent enough when dealing with database upgrades it doesn’t quite give us the stability we’d like to have. We still have more than expected or acceptable down time when doing the upgrades and I’d like to see 2008 provide some solid solutions to this.