C#-Projekt: MySqlClient unter .NET ist extrem langsam

URL dieses Beitrags: http://blog.stefan-macke.com/2006/07/12/c-projekt-mysqlclient-unter-net-ist-extrem-langsam/

Bei meinem C#-Projekt füge ich teilweise bis zu 30.000 Datensätze in eine MySQL-Tabelle ein und muss diese später auch wieder auslesen. Meine speziell geschriebene Datenbank-Klasse, die diese Aufgaben erledigen soll, benötigt für 2000 Datensätze fast 5 Minuten. Das kann’s nicht sein, dachte ich mir, und somit machte mich auf die Suche nach einer Lösung, um das Ganze zu beschleunigen.

Zahlreiche Tests später (einzelne / mehrere MySqlConnections / MySqlCommands etc.) war es zwar ein wenig schneller (durch die Optimierung meines eigenen Codes) aber der Flaschenhals war eindeutig die MySQL-Datenbank. Nach einer kurzen Suche bei Google, habe ich eine Diskussion im MySQL-Forum gefunden und damit auch die Lösung meines Problems: Meine Tabellen hatten das InnoDB-Format. Nachdem ich eine Testtabelle auf MyISAM umgestellt habe, wurde das Einfügen sofort bedeutend schneller (mindestens Faktor 20, eher mehr).

Da ich auf die “Vorteile” des InnoDB-Formats verzichten kann, stelle ich meine restlichen Tabellen nun auch auf MyISAM um…

Einen Kommentar schreiben

XHTML: Diese Tags sind erlaubt: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>