Masseneinfügung großer Datenmengen in SQLite mit Python
Ich lese das:Importieren einer CSV-Datei in eine SQLite3-Datenbanktabelle mit Python
und es scheint, dass jeder vorschlägt, zeilenweise zu lesen, anstatt Bulk-Import von SQLite zu verwenden. Dadurch wird die Einfügung jedoch sehr langsam, wenn Sie Millionen von Datenzeilen haben. Gibt es eine andere Möglichkeit, dies zu umgehen?
Update: Ich habe versucht, den folgenden Code zeilenweise einzufügen, aber die Geschwindigkeit ist nicht so gut, wie ich erwartet hatte. Gibt es sowieso etwas zu verbessern
for logFileName in allLogFilesName:
logFile = codecs.open(logFileName, 'rb', encoding='utf-8')
for logLine in logFile:
logLineAsList = logLine.split('\t')
output.execute('''INSERT INTO log VALUES(?, ?, ?, ?)''', logLineAsList)
logFile.close()
connection.commit()
connection.close()