Migration von Oracle zu Snowflake
Die Ausgangslage: Ein mittelständischer Finanzdienstleister betrieb ein 20 TB Data Warehouse auf Oracle Exadata. Die Lizenzkosten explodierten, und die nächtlichen Batch-Läufe brauchten mittlerweile 14 Stunden – zu lang für das Reporting am nächsten Morgen.
Die Herausforderung
Das größte Problem war nicht das Datenvolumen, sondern die Logik. Über 15 Jahre hatten sich tausende Zeilen PL/SQL Stored Procedures angesammelt. Diese "Black Box" musste nicht nur migriert, sondern verstanden und modernisiert werden.
Unsere Lösung: Lift, Shift & Refactor
Wir entschieden uns gegen einen reinen "Lift & Shift" Ansatz. Stattdessen:
- Schritt 1: Historische Daten: Export der kalten Daten via AWS Snowball direkt in S3, von dort via Copy-Command in Snowflake.
- Schritt 2: Logik-Migration mit dbt: Statt PL/SQL zu portieren, haben wir die Business-Logik in modulare SQL-Modelle mit dbt (data build tool) neu geschrieben. Das macht den Code versionierbar und testbar.
- Schritt 3: Parallelbetrieb: Zwei Monate liefen beide Systeme parallel, um Datengleichheit sicherzustellen.
Das Ergebnis
Die Laufzeit der nächtlichen Updates sank von 14 Stunden auf 45 Minuten. Dank Snowflakes "Scale up/down" Architektur zahlt der Kunde nun nur noch für die Rechenleistung, die er tatsächlich nutzt – eine Kostenersparnis von ca. 40% gegenüber der On-Premise Lösung.