0
メモリに収まらない非常に大きなMySQLテーブルを解析しようとしています。私は、次の午前のアプローチは、pymysql
を使用して、次のとおりです。pythonカーソルで行単位でデータをロード
db = PyMySQL.connect(**connection_params)
cur = db.cursor()
cur.execute('SELECT * FROM big_table')
for row in cur:
process(row)
私が観察しています何cur.execute()
が熱心にメモリにデータをロードすることです。行ごとに反復することが可能です遅延して?
私はこれがLIMIT
とOFFSET
の句を組み合わせてできることを認識していますが、より透過的な方法で行うことは可能ですか?あなたは(cur.execute
後に)それと結果の数を取得することができます
私は繰り返すことができることを承知しています'cur.execute()'の結果を上回っていますが、問題は実際にデータを読み込むことであり、それは私が '非常に大きなテーブルではできないものではありません。 – adrpino