¿Tiene pyodbc alguna ventaja de diseño sobre pypyodbc?

Sé que pyodbc es un proyecto más antiguo y, probablemente, más funcional y robusto, pero ¿hay algo sobre su diseño (basado en componentes de código C comstackdo) que lo haría preferible a una implementación de Python puro, como pypyodbc ?

Trabajo mucho con ETL y estoy pensando en cambiar de un enfoque de Linux / Jython / JDBC a un enfoque de Windows / Cygwin / Python / ODBC.

Las ventajas potenciales de pyodbc sobre pypyodbc al escribirse en C serían:

  • velocidad – ver la comparación pypyodbc wiki
  • uso de memoria más conservador

Las ventajas potenciales de pypyodbc sobre pyodbc escritas en Python serían:

  • Menos probabilidades de contener problemas con el puntero C
  • Ligeramente menos probable que contenga problemas de asignación de memoria
  • Más sencillo de mantener; un lenguaje de nivel superior significa menos líneas de código
  • Mucho más fácil de instalar sin problemas de comstackción que requieren una comstackción separada para versiones separadas de Python, plataforma, etc.

Ventajas de la madurez:

  • Menos bichos
  • Cobertura más completa de las características.
  • Mejor manejo de esquineros.

La madurez depende en gran medida de que pyodbc no pyodbc errores. En mi experiencia, eso no es cierto y ha tenido un buen número de errores de pérdida de memoria, etc. Y vea los comentarios sobre esta respuesta: existe evidencia de que pyodbc puede ser bastante problemático.

La afirmación del autor es que pypyodbc es una reimplementación del código pyodbc en Python, y eso significaría que la cobertura de la característica debería ser equivalente. Sin embargo, puede haber algunos casos de esquina que se han tratado menos en el código más reciente.

Descargo de responsabilidad: todavía no he intentado pypyodbc