Categories

Quick performance note about DBAPI implementations for Win32

Believe me or not, but according to my crude bench, adodbapi is about 50 times slower than mxODBC for a basic scan of a table of 900,000 lines from a Microsoft SQL Server 2000 server (227 seconds versus 4 seconds). This is not especially surprising since adodbapi is written in pure Python and use the pywin32 API to access ADO COM objects, whereas mxODBC is a Python module written in pure C.

I’ve been using mxODBC for two years now as a part of the mxODBC Zope DA, and I have never been disappointed (except by Zope but that’s another story). I’ve just realized that I have been using mxODBC as a DBAPI driver on another production server (no Zope this time) without a proper license (mxODBC is not free for commercial use), so I’ve bought two (one per CPU), for a pretty good price (150€ total) given the performance :) .