Hallo,
ich möchte aus einer Datenbanktabelle einfach alle Daten so schnell wie möglich einlesen.
inhaltlich also sowas wie ein "SELECT * FROM mytable" ohne jegliche where-clause.
danach wird über das resultset iteriert und die einzelenen einträge gelesen.
Meine Tabelle hat ca 200.000 Reihen mit je ca 10 Spalten, der Datentyp der meisten Spalten ist long oder double, eine spalte erlaubt string mit maximal 3000 Zeichen.
Funktionieren tut alles, nur mit der Perfromacne bin ich noch nicht zufrieden. Folgenden verbesserungen habe ich bereits durchgeführt.
* Im SELECT statement das Stern(*) durch die tatsächlichen Spaltennamen ersetzt
* Die FetchSize auf 200.000 erhöht
woran könnte ich sonst noch schrauben?
Ich bin bei den ändereungen nicht nur auf den client beschränkt, sondern kann auch direkt an der DB einstellungen ändern - nur weiss ich überhaupt nicht welche....
bin für jeden Tipp dankbar, freu mich auch über Links zu empfohlenen Literatur zu diesem Thema.
dank im voraus!
Stefan
ich möchte aus einer Datenbanktabelle einfach alle Daten so schnell wie möglich einlesen.
inhaltlich also sowas wie ein "SELECT * FROM mytable" ohne jegliche where-clause.
danach wird über das resultset iteriert und die einzelenen einträge gelesen.
Meine Tabelle hat ca 200.000 Reihen mit je ca 10 Spalten, der Datentyp der meisten Spalten ist long oder double, eine spalte erlaubt string mit maximal 3000 Zeichen.
Funktionieren tut alles, nur mit der Perfromacne bin ich noch nicht zufrieden. Folgenden verbesserungen habe ich bereits durchgeführt.
* Im SELECT statement das Stern(*) durch die tatsächlichen Spaltennamen ersetzt
* Die FetchSize auf 200.000 erhöht
woran könnte ich sonst noch schrauben?
Ich bin bei den ändereungen nicht nur auf den client beschränkt, sondern kann auch direkt an der DB einstellungen ändern - nur weiss ich überhaupt nicht welche....
bin für jeden Tipp dankbar, freu mich auch über Links zu empfohlenen Literatur zu diesem Thema.
dank im voraus!
Stefan