Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Python MySQL mais rápido


O padrão MySQLdb cursor busca todo o resultado da consulta de uma vez do servidor. A conversão desses dados em uma lista de tuplas do Python pode consumir muita memória e tempo.

Use MySQLdb.cursors.SSCursor quando você quer fazer uma grande consulta e extrair resultados do servidor um de cada vez. Observe, no entanto, que ao usar o SSCursor, nenhum outro consulta pode ser feita na connection até que todo o conjunto de resultados tenha sido buscado.
import MySQLdb
import MySQLdb.cursors as cursors
connection = MySQLdb.connect(
    ...
    cursorclass = cursors.SSCursor)
cursor = connection.cursor()
cursor.execute(query)
for row in cursor:
    ...

Ou use oursql , um driver Python alternativo para MySQL. Um dos recursos do oursql é que ele busca linhas lentamente .