DB2 UDB V5.2 auf Sun Multi Processor InstallationGeschrieben von Gernot Ruban on Januar 20, 2001 um 19:12: Zur Information: Kürzlich war ich beim Aufbau einer Produktionsumgebung beteiligt. Dabei gab es auf einer Sun/Solaris Mehr-Processor-Maschine und DB2 UDB V5.2, dem Rahmen für eine Data Warehouse Anwendung, ein beachtliches Phänomen! Das s.g. ETL (Extract/Transform/Load) Tool "Powermart" von Informatica mit seinen "Sessions" wurde installiert/portiert und sollte in einigen Läufen auf der Produktionsmaschine getestet werden. Plötzlich und unerwartet traten auf einer beteiligten Datenbank, dem Powermart Repository, gehäuft Deadlocks/Timeouts auf. Selbst die Anpassung der Datenbank- und Systemparameter an die Einstellungen der Entwicklungsumgebung brachten keine Verbesserung. Programme ("Sessions"), die parallel auf der Testmaschine liefen, brachen auf der Produktionsmaschine ab! Auch die Angleichung des Solaris Kernels (/etc/system) mit der Einstellung des Shared Memory und der Semaphoren, brachte keine Verbesserung. Des Rätsels Lösung war schließlich die (Re-) Aktivierung der DB2 Umgebungsvariablen DB2_PARALLEL_IO mit dem dbset Command. Während auf der Testmaschine, eine Ein-Prozessor-Maschine, jeder Prozess ausreichend CPU bekam, bekam DB2 auf der Mehr-Prozessor-Maschine nur 1 CPU - die nun aber tatsächlich parallel laufenden Powermart Programme hingegen liefen auf 5 CPU's und bombadierten das DB2 mit Änderungs-Anforderungen. DB2 war in dem Momement noch nicht für den Betrieb auf einer Mehr-Prozessor-Maschine eingestellt. Nach der Aktivierung mit db2set DB2_PARALLEL_IO=* traten keine Deadlocks/Timeouts mehr auf! (Der Parameter war beim Aufbau der Maschine gesetzt worden, aber im Laufe der Konfigurierung scheinbar (fehlerhaft von DB2?) deaktiviert worden. Who knows?!).
Antworten:
|