Toad World® Forums

SQL 2005 Benchmarking, ODBC vs, DBLib Performance


#1

I found, https://support.quest.com/SUPPORT/index?page=solution&id=SOL16209 which states that SQL 2005 does not ship with the require DBLib dll anymore.

Microsoft also says that DBLib should not be used anymore, exact quote:

Although the SQL Server 2005 Database Engine still supports connections from existing applications using the DB-Library and Embedded SQL APIs, it does not include the files or documentation needed to do programming work on applications that use these APIs. A future version of the SQL Server Database Engine will drop support for connections from DB-Library or Embedded SQL applications. Do not use DB-Library or Embedded SQL to develop new applications. Remove any dependencies on either DB-Library or Embedded SQL when modifying existing applications. Instead of these APIs, use the SQLClient namespace or an API such as OLE DB or ODBC. SQL Server 2005 does not include the DB-Library DLL required to run these applications. To run DB-Library or Embedded SQL applications you must have available the DB-Library DLL from SQL Server version 6.5, SQL Server 7.0, or SQL Server 2000.

Has anyone done any tests to determine the overhead in running SQL 2005 w/ ODBC connectivity vs. DBLib connectivity? If so, one which tests?

Thanx,
Ross


#2

Currently you will get better performance with the standard benchmarks using DB-Lib driver over the ODBC driver. This is due to the fact the ODBC version of the some of the standard benchmarks, such as the TPC-C, has not been optimized for the individual database vendors, and is still vanilla ODBC. This will be fixed in a near future release.

There also seems to be a scalability issue with ODBC and does not seem capabable of getting as many of virtual users as the DB-Lib implemenation. This seems to be either in the ODBC manager or the driver itself and we are still investigating the cause.


#3

Remember that this is all only relavent to the whatever the application deployed on that server might use. So using native client if your app only does ODBC will not be the best test. So choose your BMF driver with your apps database connectivity in mind …