Performance PGSQL<->MSSQL bei Blobs

Hallo!

Ich hab schon soviel von langsamen Datenbanken wegen Blobs gehört.
Jetzt wollt ich dabei selber etwas rumprobieren und hab mir die MSSQL 2005 Express edition installiert und eine Tabelle angelegt mit folgenden Spalten: ID(PM) und Blobfeld.

Das entsprechende Programm zum mehr oder weniger wahllosen hineinstopfen von Fotos ist in C# geschrieben.
Der “Upload” dauert einen Moment, der “Download” geht aber für 800kb Dateien innerhalb von ein paar millisekunden - dann hat die VB-Applikation die Datei im Speicher.

Wenn ich das alles nun eins zu eins auf PGSQL umbaue (in .Net mit Npgsql) dann dauert der gleiche Auslesevorgang ca 200Millisekunden - also um den Faktor 100 langsamer.

Wie kann das sein? Ich hab derweil schon ein bischen an den Memoryeinstellungen rumgespielt, hat aber nichts bewirkt…

Was mir noch aufgefallen ist: der MSSQL server nimmt die komplette DB (ca 1gb) einfach in den Ram und ist deswegen natürlich furchtbar schnell, das scheint PGSQL nicht zu machen?!

Kann da vielleicht auch wer was dazu sagen ? Was mache ich noch falsch ?

Aus dem hoheln Bauch würde ich sagen es kann auch an der Anbindung liegen. In einer reinen .Net und Windows Umgebung würde ich vermuten, das es mit SQL-Server einfach besser läuft als mit PostgreSQL. Ist aber nur vermutet. Wenn du etwas mehr über dein System schreibst, kann dir vielleicht wer helfen, der besser Bescheid weiß als ich :wink:

Gruß Uwe

Hi!
ich teste an meinem Laptop,
Programm und Server sind beide auf dem gleichen System - ein Test übers Netzwerk werde ich erst am Wochenende machen , wenn überhaupt.

Der Laptop ist ein Core2Duo mit 2ghz und 3gb ram - ausreichend würd ich sagen.

Mich stört ja auch nicht die absolute Zeit - 3msek sind da hammer würd ic hsagen, sondern die relative…

Der eine Server braucht max 3msek, der andere max 200msek - da liegen welten dazwischen
Aber ich hab noch in verdacht dass man hier evtl was konfigurieren müsste… (bei Postgres)

Mit der Conf datei und den Memory Werten hab ich mich schon gespielt, brachte allerdings keinen Unterschied. Mit Wartungsarbeiten und dem Versuch von neuen Indexen brachte es ebenfalls nix …

Hallo,

Konntest du das Problem eingrenzen? Mit welcher PG Version hast du es getestet?

für das Blob (in Postgres)