ODBC, Il ritorno… OLEDB, la dipartita…

Ben tornati a tutti (o quasi) dalle ferie, per me sono già finite da qualche giorno ma, come molti di Voi, sto ancora spalando le centinaia di mail accumulate durante il mese di Agosto. In genere qualche sorpresa capita sempre, e anche quest’anno l’aspettativa non è andata delusa e
mi sono ritrovato con una notizia, per gli addetti ai lavori, abbastanza sconvolgente, Ve la riporto con il post diretto dal Blog dei colleghi del team del “SQL Native Client”:

http://blogs.msdn.com/b/sqlnativeclient/archive/2011/08/29/microsoft-is-aligning-with-odbc-for-native-relational-data-access.aspx

The next release of Microsoft SQL Server, codename “Denali”, will be the last release to support OLE DB. OLE DB will be supported for 7 years from launch, the life of Denali support, to allow you a large window of opportunity for changing your applications before the deprecation.

OK, dopo un attimo di smarrimento cerchiamo di fare il punto e di “mitigare” lo sgomento:

  • Denali, che sarà presumibilmente rilasciato nel 2012, profezia dei Maya permettendo, supporterà ancora OLEDB dal momento del suo lancio fino ai 7 anni successivi, quindi arriviamo all’anno 2019;
  • La cosa non impatterà i driver OLEDB di terze parti, bensì solo quelli Microsoft;
  • La differenza in termini di performance, specialmente negli ultimi anni, si è sempre più assottigliata, partendo da un predominio iniziale dell’OLEDB, ora sono praticamente allineati;
  • Un eventuale migrazione da OLEDB a ODBC non è cosa impossibile, fortunatamente è anche ben documentata: 

http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-components-postattachments/00-10-20-20-75/A-Quick-Guide-for-OLE-DB-to-ODBC-Conversion.docx 

  • Con l’avvento del “Cloud”, si è resa ancora più forte l’esigenza di uniformare ad uno standard non proprietario una moltitudine di applicazioni, l’ODBC per l’appunto;

L’impatto sulle applicazioni è ovvio, ma ci sono altre considerazioni un po’ meno ovvie riguardanti, per esempio, i “Linked Server”, ADO.NET, SSIS, OLEDB Provider per DB2 e altre componenti Microsoft basate su OLEDB. Il seguente post ci dice qualcosa in merito a cosa succederà di qui a
qualche anno:

http://social.technet.microsoft.com/Forums/en/sqldataaccess/thread/e696d0ac-f8e2-4b19-8a08-7a357d3d780f

Other Microsoft SQL Server features and products that are built on top of OLE DB or use OLE DB, like Distributed Query (Linked Server), SQL Server Integration Services, SQL Server Analysis Services etc., will continue to be supported as per their respective terms. Microsoft will take care of eplacing the underlying dependency.

P.S. = Qualche sospetto su un annuncio del genere già lo avevo da un paio di anni, quando con la nascita di “SQL Azure” l’OLEDB non è stato (e non è) incluso nei protocolli dati per l’accesso all’infrastruttura, a vantaggio di ODBC, PHP, ADO.NET, JDBC, etc. Un assenza molto sospetta…. :-)

Ah, un’ultima importante cosa, mi raccomando però di fare in fretta visto che scade il 9 Settembre prossimo: se volete dire la vostra o influenzare quello che Microsoft farà nel prossimo futuro per quanto riguarda la connettività a SQL, compilate la survey contenuta al link sottostante.

            http://www.zoomerang.com/Survey/WEB22CS45XT9FE/

Buon lavoro a tutti.

--Igor Pagliai--