SAP BDLS Umsetzungen direkt über Oracle mit sqlplus – schneller gehts immer!
Beim Umsetzen von logischen Systemnamen im SAP mittels der Transaktion BLDS kann es trotz Indizes vorkommen, dass ein Lauf einfach zu lange benötigt – oder im Extremfall (gerade erlebt) der Rückgabewert der Menge der umzusetzenden logoischen Systemnamen so groß ist, dass die Variable die Zahl nicht aufnehmen kann und die BLDS mit einem Kurzdump einfach aussteigt. Es muss also nicht immer an der Größe der Datenbank oder der Systemperformance liegen wenn die BLDS streikt. Das komplette Vorgehen kann man extrem beschleunigen wenn man an der BDLS Funktionalität vorbei direkt auf der Datenbank die Umsetzung der Tabelle vorgenommen wird. Im sqlplus kommt man jedoch mit einem einfachen Update Statement nicht schneller als die BDLS selbst ans Ziel. Das Zaubertool der Wahl heißt in diesem Fall CTS – create table as.
Das Vorgehen ist recht einfach aber sehr effektiv und schnell. Man teilt dem Oracle lediglich mit, dass man eine neue Tabelle erstellen möchte und gibt die Referenzen auf eine bestehende Tabelle an. Den Rest erledigt das System selbst – parallelisiert und sehr schnell. Das Updaten einer Tabelle mit mehreren Milliarden Einträgen und einer größe von mehr als einem TB kann schon mal Tage benötigen. Mit dem CTS hat man die Tabelle in wenigen Stunden neu aufgebaut und auch gleich die gewünschten Feldinhalte verändert.
Das Vorgehen sieht inetwa so aus:
1) Ermitteln der Quelltabelle mit den Feldnamen für die logischen Systeme
2) Neuaufbau der Tabelle
3) Nacharbeiten an der Tabelle
4) Umbennen/Ersetzen der Tabellen
5) Neuaufbau der Indizes zu den Tabellen
6) Löschen der alten Tabelle
Ermitteln der Quelltabelle mit den Feldnamen für die logischen Systeme:
Aus den BDLS Protokollen weiß man jetzt zum Beispiel, dass im BW eine Tabelle mit über 2 MRD Einträgen existiert, die umgesetzt werden soll:
„/BIC/ZPWE“ mit den Feldern LOGSYS und AWSYS, die die logischen Systemnamen beinhalten und umgesetzt werden sollen.
Neuaufbau der Tabelle:
Das Statement zum Neuaufbau könnte dann so aussehen:
[Read more…]