singlestore-labs / singlestoredb-python

Python SDK for the SingleStore database and workspace management APIs
Apache License 2.0
22 stars 17 forks source link

Add C extension for performance #2

Closed kesmit13 closed 1 year ago

kesmit13 commented 2 years ago

The driver used by the SingleStoreDB Python client is PyMySQL which is great for compatibility and ease-of-installation, however, it is quite slow compared to all of the other drivers (mysql.connector, MariaDB connector, MySQLdb, etc.). Adding a C extension to process the row data and do data transformations would greatly speed it up.

It would be nice if we could use the Python simple C API so that we don't have to build so many packages since we will likely support Python 3.6 for some time, we already would need 6 packages for each platform (Linux, Windows, Mac x86 and Mac ARM). If we can use the simple API, we would only need one package for each platform.

kesmit13 commented 1 year ago

C extension is available in v0.5.0.