Friday, June 01, 2007

IBM and Oracle to Support the ADO.NET Entity Framework

Microsoft's two three major relational database management system (RDBMS) competitors—IBM, Oracle, and MySQL—have announced plans to support the ADO.NET Entity Framework.

Update 6/15/2007: David Sceppa reports in his TechEd: Provider Writers Talk About the Entity Framework post that IBM "demonstrated an early build of their provider working with the 101 LINQ to Entities samples." MySQL missed the session "due to scheduling problems but they are still very much involved."

Update 6/16/2007: Mike Pizzo expands on David Sceppa's report with brief details of Tech*Ed's DAT04-TLC ADO.NET Entity Framework: Provider Model and Integration with Third-Party Databases presentations by DataDirect Technologies, Sybase, Oracle, and VistaDB in his Database Vendors Discuss the Entity Framework and LINQ at TechEd post of 6/15/2007 in the ADO.NET blog. As far as I can determine, this is the first mention of Sybase as participant in the EntityClient provider program. Mike also confirmed IBM's intention to add EntityClient and LINQ support to their Informix ADO.NET Data Provider.


From my Future LINQ to SQL Support for Multiple Databases? post: According to the April 2007 "Looking to LINQ" story in Redmond Developer News:

Microsoft is working with other database vendors to build interoperability into their repositories as well. Oracle Corp. officials would only say they're monitoring LINQ's progress, but IBM Corp. says it plans to support LINQ in both its DB2 database and the Informix IDS platform.

Curt Cotner, an IBM Fellow and CTO for database servers, says LINQ could very well be critical in eliminating the fragmentation that exists today among programmers and database developers. Still, Cotner expects LINQ to have its share of both ardent supporters and critical detractors. "It's going to be popular for a significant segment of customers, but there will be another segment that will see it as not down the path they're trying to follow," he says. ...

But Cotner doesn't see [the Java Persistence API,] JPA and LINQ as competing specifications per se. "It addresses a different segment of the population," he says. And frankly, he admits from a developer standpoint, JPA can't touch LINQ in terms of its ability to build native queries into code from the language and development environment.

Supporting LINQ in a third-party RDBMS implies writing a custom EntityClient provider, as mentioned by Elisa Johnson, Program Manager, Microsoft Data Programmability in an April 23, 2007 comment in the ADO.NET Team's ADO.NET Entity Framework - Orcas Beta 1 post:

We are working closely with many DB vendors, including IBM, to help them update their ADO.NET providers to support the Entity Framework. Unfortunately, I do not have any information as to when they may release a new provider.

David Sceppa, an ADO.NET program manager and author of Programming Microsoft ADO.NET 2.0 Core Reference, refers to Tech*Ed's "ADO.NET Entity Framework: Provider Model and Integration with Third-Party Databases" chalktalk in this May 25, 2007 Entity Framework Provider Talk at TechEd post:

I’m pleased to say that DataDirect, IBM and others will be in attendance to talk about the work they’re doing to add support for the Entity Framework to their ADO.NET providers.

  • DataDirect will discuss heterogeneous data sources in an Entity Framework environment, the importance of best of class ADO.NET providers as an essential component for the Entity Framework and present a use case on a how to ensure a successful Entity Framework development and deployment cycle.

  • IBM will talk about their investments to support the Entity Framework for their Data Servers and to demonstrate an early build of their provider working with the Entity Framework.


Christian Shay, Product Manager in the .NET and Windows group at Oracle left this comment to the Future LINQ to SQL Support for Multiple Databases? post on May 31, 2007:

I think Oracle is keeping their level of support secret. But, a clue has just been revealed and apparently, more will be known at TechEd. Oracle is co-presenting a talk called "ADO.NET Entity Framework: Provider Model and Integration with Third-Party Databases" Check it out:

So it's now clear that Oracle is doing more than "monitoring LINQ's progress."


Update 6/2/2007: According to Mike Pizzo, the ADO.NET architect who's leading the chalk talk:

We have had two “ProviderFests” where vendors have come to Redmond for a week at a time to extend and test their providers with the latest Entity Framework bits and give us feedback. SQLite has already posted a version of their provider that works with the Entity Framework beta, and IBM, DataDirect, Oracle and MySQL will all join me for a chalk talk at TechEd on Friday to discuss their experiences extending their providers for the Entity Framework.

Hopefully, Sybase and the PostgreSQL folks will join the EF bandwagon before long.


Embedded RDBMSes

David Sceppa added the ADO.NET Orcas: Sample Provider post to the ADO.NET Team blog on March 16, 2007. The entry begins:

Last month, the ADO.NET team hosted a number of ADO.NET Data Provider writers on campus to present information on how to enhance an existing provider to support the Entity Framework features in the upcoming Orcas release.

David's ADO.NET vNext Provider Writer Event Summary post of August 25, 2006, mentions that representatives from DataDirect, IBM, MySQL, SQLite, and Sybase attended the event.


PHX Software's Robert Simpson announced on September 6, 2006 a preview release of an "ADO.NET vNext" provider for SQLite and wrote about the conference in this ADO.NET Entity Framework blog. (Google uses SQLite as the embedded database for Google Gears.)


VistaDB Software, Inc. announced the intent to support LINQ in a future version of VistaDB. VistaDB 3 is an embedded SQL database for .NET, the .NET Compact Framework, and Mono that supports datatypes compatible with SQL Server 2005 (except xml) and uses T-SQL syntax. Jason Short wrote in an April 7, 2007 "LINQ and VistaDB" blog post:

I feel quite strongly that LINQ support in the future will be a vital feature of VistaDB. Since we are already a fully managed database for Dot Net, the ability to make fully type safe queries will definitely set us apart from other database systems. And the fact that we will not have to drop to SQL code to perform that queries will mean a faster running database as well (and that is what you really wanted to hear, right?). ...

LINQ support is on the list for research right now. When will [w]e release it? I don’t know. I would really like to hear from you about your plans to support LINQ. I think it is quite obvious that LINQ is going to change the way a lot of applications are written to query their database.

SQL Server Compact Edition

SSCE has an EntityClient provider, but it doesn't appear to work in Orcas Beta 1.

(The preceding content, except the new Oracle and Tech*Ed session information, is repurposed from my Future LINQ to SQL Support for Multiple Databases? post.)