sql >> Database >  >> RDS >> Mysql

Het laden van mysql-tabel in python duurt erg lang in vergelijking met R

Dankzij behulpzame opmerkingen, met name van @roganjosh, lijkt het erop dat het probleem is dat de standaard mysql-connector is geschreven in python in plaats van in C, waardoor het erg traag is. De oplossing is om MySQLdb te gebruiken , wat een native C-connector is.

In mijn specifieke setup, met Python 3 met anaconda, was dat niet mogelijk omdat MySQLdb wordt alleen ondersteund in python 2. Er is echter een implementatie van MySQLdb voor python 3 onder de naam mysqlclient .

Met deze implementatie is de tijd nu teruggebracht tot ongeveer 5 minuten om de hele tabel te lezen, niet zo snel als R, maar veel minder dan de ongeveer 40 minuten die daarvoor nodig waren.

Ik sta nog steeds open voor suggesties die het sneller zouden maken, maar ik denk dat dit zo goed is als het maar kan worden.



  1. Methoden om rijen in SQL Server te rangschikken:ROW_NUMBER(), RANK(), DENSE_RANK() en NTILE()

  2. Hulp nodig bij het selecteren van SQL-query's

  3. Een MySQL-database converteren naar UTF-8-codering

  4. Hoe kan ik een MDB-bestand (Access) naar MySQL (of gewoon SQL-bestand) converteren?