tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
547
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    luigied luigied ist offline Mitglied Silber
    Registriert seit
    Mar 2007
    Beiträge
    77
    Hi Leute,

    ich steck etwas in ner Gewissenskrise
    Ich soll eine Programm schreiben (in Java), welches Daten von verschiedenen MS SQLServer-Datenbanken nach DB2 migriert. Soweit so einfach.

    Bisher schreibt mein Programm die Daten auch wunderbar von in extra angelegte Tabellen der DB2. Allerdings müssen diese Daten dann noch in andere Tabellen einsortiert werden.

    Mein Chef meinte, dazu könnte man ein Linux-Shell-Skript schreiben, um nicht jeden Query einzeln absetzen zu müssen.

    Jetzt ist mir aber aufgefallen, dass das Shell-Skript doch aber auch nix anderes macht, als die Querys einzeln zur DB zu schicken, oder
    Wäre es nicht sinnvoller das Ganze über Stored Procedures oder Trigger zu lösen?

    Oder haben Linux-Shell-Skripte Fähigkeiten, die mir bisher verborgen geblieben sind

    Danke schonmal.

    Mfg LuigiEd
     

  2. #2
    Avatar von Enumerator
    Enumerator Enumerator ist offline Mitglied Kamel
    Registriert seit
    Jan 2007
    Ort
    Schreibtisch
    Beiträge
    525
    Blog-Einträge
    2
    Hi!

    Die "Linux-Shell" (toller Begriff, kannst' Deinem Chef mal zur fachlichen Präzision gratulieren) hat keine Super-Kuh-Kräfte. Die hat nur apt.
    Mal im Ernst:
    • Ja, Du kannst in der Shell auch nicht mehr machen als im Programm.
    • Nein, Du bist nicht gezwungen jedes Query einzeln abzusetzen. Dafür gibt's Semikola - außer natürlich Du brauchst die Ergebnisse.
    • Ja, Stored Procedures sind definitiv schneller. Aber die Frage ist, ob sich der Aufwand lohnt sie zu schreiben zumal ich annehme, das Portieren ist eine Einmalige Sache?

    Gruß
    Enum

    [EDIT]
    Übrigens gibt es für den Task einen sehr guten Guide vom IBM.
    Und auch Software, z.B. die hier...
    Geändert von Enumerator (27.10.09 um 14:22 Uhr)
     
    Zitat Zitat von Aba Assa
    "Zitate sind so etwas wie Outsourcing des Geistes."
    just-lyrics.org :: my-lyrics.org

  3. #3
    luigied luigied ist offline Mitglied Silber
    Registriert seit
    Mar 2007
    Beiträge
    77
    Hey, danke erstmal für die schnelle Antwort.

    Ich glaube ich hab das etwas zu schwammig formuliert.

    1. "Linux-Shell" hab ich jetzt einfach gesagt, weil ich es nicht besser weiß *Chef in Schutz nehm*
    2. Das mit den Semikolons weiß ich auch meinte jeden Query einzeln an den Server schicken
    3. Das Programm soll einmal am Tag laufen und die neuen Daten migrieren

    Ein Cron-Job soll mein Java-Programm dann entsprechend starten und die Daten sollen migriert werden. Deshalb dachte ich, Stored Procedures wären hier angebrachter.
    Gut: Der Vorteil bei Shell-Skripten (oder Bash) ist, dass man sie leichter anpassen kann, da es sich ja nur um Plain-Text handelt
     

  4. #4
    Avatar von Enumerator
    Enumerator Enumerator ist offline Mitglied Kamel
    Registriert seit
    Jan 2007
    Ort
    Schreibtisch
    Beiträge
    525
    Blog-Einträge
    2
    Hi!

    Also ich verstehe die Aufgabe so, dass Den Java-Programm die Daten aus der SQLServer holt und in nach DB2 schreibt. Anschließend sollen die Daten in DB2 "einsortiert" werden und dafür war der Vorschlag mit dem Shellskript.
    Wenn das wirklich täglich passiert und über Trigger in den Eingangs-Tabellen zu lösen ist, dann sind die vor allen anderen Methoden vorzuziehen; sauberer geht's nicht.
    Alternativ oder in Addition sind Stored Procedures eine gute Wahl, doch egal ob die notwenigen Queries direkt aus dem Programm kommen oder es nur eine Stored Procedure aufruft: vergiss' das Shellskript, sonst musst Du zwei unabhängige Quellcodes pflegen wo einer reichen würde.
    Der einzige Vorteil den ich im Shellskript sehe ist, dass es ohne Probleme auf den Datenbank-Server geladen werden kann und seine Arbeit von dort aus erledigen, doch wenn Du sowieso einen Java-Prozess zum sammeln der Daten brauchst und mit Triggern und SPs arbeitest, ist der Gewinn minimal und in jedem Fall die leichtere Wartbarkeit einer integrierten Lösung vorzuziehen.

    Gruß
    Enum
     
    Zitat Zitat von Aba Assa
    "Zitate sind so etwas wie Outsourcing des Geistes."
    just-lyrics.org :: my-lyrics.org

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 26.07.10, 19:21
  2. SQL 2000 - Stored Procedure
    Von si031006 im Forum Relationale Datenbanksysteme
    Antworten: 0
    Letzter Beitrag: 05.01.07, 09:56
  3. stored procedure
    Von 4sb3st im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 18.12.06, 13:15
  4. [VC++] Stored Procedure
    Von blotte im Forum .NET Datenverwaltung
    Antworten: 0
    Letzter Beitrag: 20.09.06, 14:28
  5. return aus stored procedure
    Von jenno im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 20.09.05, 12:11