Die Kunst der Kon­so­li­die­rung: Har­mo­ni­sie­rung eines Multi-Man­dan­ten-DWH in einer On-Premises-Welt



Wäh­rend sich Cloud­lö­sun­gen zuneh­mend als Stan­dard eta­blie­ren, set­zen den­noch viele Unter­neh­men wei­ter­hin auf ihre bestehen­den On-Premises-Sys­teme – getrie­ben durch regu­la­to­ri­sche Anfor­de­run­gen, spe­zi­fi­sche Sicher­heits­vor­ga­ben oder his­to­risch gewach­sene Infra­struk­tu­ren. Die eigent­li­che Her­aus­for­de­rung beginnt jedoch, wenn diese tra­di­tio­nel­len Sys­teme die Basis für zukunfts­wei­sende Tech­no­lo­gien wie KI oder Advan­ced Ana­ly­tics bil­den sol­len: Hier­für ist ein har­mo­ni­sier­ter, kon­sis­ten­ter Daten­stand die abso­lute Grundvoraussetzung.

In die­sem Bei­trag beleuch­ten wir ein archi­tek­to­nisch anspruchs­vol­les Sze­na­rio aus der Retail-Bran­che. Wir zei­gen kon­kret, wie wir ein kom­ple­xes On-Prem Multi-Man­dan­ten-DWH trans­for­miert haben, nach­dem die Quell­sys­teme bereits zu einem glo­ba­len Ein­heits­sys­tem kon­so­li­diert wor­den waren. Dabei bli­cken wir auf das span­nende Zusam­men­spiel zwi­schen einer struk­tu­rel­len Ver­ein­fa­chung an der Quelle und der not­wen­di­gen logi­schen Prä­zi­sion im Data Ware­house, um den Brü­cken­schlag zwi­schen his­to­ri­scher Tiefe und moder­ner Ein-Sys­tem-Logik zu meistern.

Das Daten­öko­sys­tem: Vom loka­len Silo zur glo­ba­len Vision

Um die Kom­ple­xi­tät die­ses Pro­jekts zu ver­ste­hen, müs­sen wir uns die Aus­gangs­lage vor Augen füh­ren. Wir befin­den uns in einem klas­si­schen, inter­na­tio­nal agie­ren­den Retail-Umfeld. In der ursprüng­li­chen Struk­tur pflegte jedes Land seine eige­nen Daten mit einer jeweils eige­nen Codie­rungs­lo­gik in einem iso­lier­ten, län­der­spe­zi­fi­schen Sys­tem. Für die IT bedeu­tet dies folg­lich: Jedes neue Land brachte eine wei­tere iso­lierte ERP-Instanz mit sich. Es gab eigene Arti­kel­stämme und indi­vi­du­elle Pro­zesse zur Ver­bu­chung der Verkäufe.

Diese Zer­split­te­rung war das Hin­der­nis für unser über­ge­ord­ne­tes Ziel: die Schaf­fung einer unter­neh­mens­wei­ten Ana­ly­se­fä­hig­keit. Um Syn­er­gien zu nut­zen und Pro­zesse glo­bal zu steu­ern, wollte das Unter­neh­men weg von den loka­len Insel­lö­sun­gen. Die Vision war ein ein­heit­li­ches, glo­ba­les Sys­tem, in dem alle Län­der­da­ten zen­tral gepflegt wer­den. Ein Arti­kel sollte über­all die glei­che Defi­ni­tion haben, und ein Pro­zess sollte in Wien genauso ablau­fen wie in Berlin.

Die Archi­tek­tur der Datenstrecke

In unse­rer zugrun­de­lie­gen­den Daten­ar­chi­tek­tur ist der Weg eines Daten­sat­zes klar defi­niert: Die Daten wer­den aus ver­schie­de­nen Daten­quel­len durch ETL-Jobs inge­stiert und als erste Zwi­schen­schicht in dedi­zier­ten Län­der­ta­bel­len in einem Ope­ra­tio­nal Data Store (ODS) in rela­tio­na­lem For­mat trans­for­miert und ges­ta­ged. Unsere Phi­lo­so­phie lau­tet hier: So quel­len­nah wie mög­lich spei­chern. Nur so bleibt die volle Rück­ver­folg­bar­keit (Data Lineage) erhalten.

Wäh­rend die Daten im ODS nur für einen flüch­ti­gen Zeit­raum für ope­ra­tive Zwe­cke auf­be­wahrt wer­den, fin­det die eigent­li­che „Ver­ede­lung“ erst im wei­te­ren Ver­lauf beim Trans­fer in das Data Ware­house (DWH)-Sys­tem statt. Die ODS-Daten wer­den mit tech­ni­schen Vali­die­run­gen, Daten­an­rei­che­run­gen und Daten­typ-Berei­ni­gun­gen in das DWH-Sys­tem über­tra­gen. Hier wer­den die Daten in län­der­ge­trenn­ten Sche­mata über mehr als zehn Jahre archi­viert. Diese his­to­ri­sier­ten Daten bil­den die Grund­lage für unsere BI-Tools. Sie ermög­li­chen ein fun­dier­tes, nach­hal­ti­ges Berichts­we­sen über lange Zeit­rei­hen hinweg.

Multi-Tennant-DWH Architecture that should be adjusted to reflect the data consolidationg

Ziel­bild-Stra­te­gie: Die glo­bale Vision in bestehen­der Daten­ar­chi­tek­tur verankern

Wäh­rend die oben beschrie­bene Archi­tek­tur den sta­bi­len Rah­men für den Daten­fluss bil­det, prallt diese Struk­tur nun auf die ver­än­derte Rea­li­tät der neuen Sys­tem-Vision. Die Ein­füh­rung eines glo­ba­len Ein­heits­sys­tems, das alle Län­der­pro­zesse har­mo­ni­siert, war zwar ein bedeu­ten­der Mei­len­stein für die IT-Land­schaft, stellte uns aber in der DWH-Land­schaft vor zwei Kernfragen:

  1. Wie defi­nie­ren wir, zu wel­chem Land jeder Daten­satz gehört? Bis­her war die Län­der­er­ken­nung im DWH impli­zit gelöst. Da die Daten aus phy­si­ka­lisch getrenn­ten Quell­sys­te­men flos­sen, wuss­ten wir durch die Iden­ti­fi­ka­tion der Quelle exakt, wel­cher Daten­satz zu wel­chem Land gehörte. Das passte per­fekt zu unse­rer Multi-Man­dan­ten DWH-Archi­tek­tur. Mit der Ein­füh­rung des har­mo­ni­sier­ten Ein­heits­sys­tems ver­schwand diese Grenze. Plötz­lich lan­de­ten alle Daten „in einem Topf“, und wir muss­ten neue Wege fin­den, um die Her­kunft für unsere Berichte prä­zise zu steuern.
  2. Wie ver­ei­nen wir die har­mo­ni­sierte Logik und bestehende Struk­tu­ren? Ein kri­ti­scher Aspekt unse­rer län­der­ge­trenn­ten Daten­ar­chi­tek­tur war die his­to­risch gewach­sene Iso­la­tion der Codie­run­gen. Da die Quell­sys­teme über Jahr­zehnte län­der­spe­zi­fisch getrennt betrie­ben wur­den, herrschte eine tiefe seman­ti­sche Inkon­sis­tenz vor. Bei­spiels­weise ent­sprach die Arti­kel­num­mer 1234 in Ham­burg oft einem völ­lig ande­ren Arti­kel mit der­sel­ben ID in Zagreb. Durch die Har­mo­ni­sie­rung war es unser erklär­tes Ziel, diese Codie­run­gen so zu kon­so­li­die­ren, dass jede ID eine ein­deu­tige, unter­neh­mens­weite Bedeu­tung auf­weist. Nur so konnte sicher­ge­stellt wer­den, dass Ana­ly­sen über ver­schie­dene Stand­orte hin­weg nicht „Äpfel mit Bir­nen“ vergleichen.

Somit wurde unsere Daten­ar­chi­tek­tur mit der strik­ten Tren­nung in län­der­spe­zi­fi­sche Sche­mata im DWH und der jah­re­lan­gen His­to­ri­sie­rung durch das neue Quell­sys­tem auf eine posi­tive Weise her­aus­ge­for­dert. Wir muss­ten eine Lösung ent­wi­ckeln, die sowohl die neue „Ein-Sys­tem-Welt“ als auch die „län­der­spe­zi­fi­sche His­to­rie“ naht­los vereint.

Stra­te­gi­sche Pla­nung: Warum kein „Big Bang“?

Ange­sichts die­ser Her­aus­for­de­run­gen stellte sich die Frage nach der Umset­zungs­stra­te­gie. Ein voll­stän­di­ger „Big Bang“ mit voll­stän­di­ger phy­si­scher Migra­tion und Umschlüs­se­lung aller his­to­ri­schen Bestände war ange­sichts begrenz­ter On-Prem-Ser­ver­ka­pa­zi­tä­ten nicht prak­ti­ka­bel. Außer­dem ist das täg­li­che Daten­vo­lu­men im Tera­bytes-Bereich zu groß. Ein sol­cher Schritt hätte die Sys­teme für Tage lahm­ge­legt. Folg­lich wäre das Risiko für Daten­ver­luste und Inkon­sis­ten­zen zu hoch gewesen.

Aus die­sem Grund ent­schie­den wir uns für eine hybride Archi­tek­tur, die Sicher­heit und Fort­schritt ver­einte: Wäh­rend die Quelle nun ein­heit­lich agierte, behiel­ten wir im DWH-Sto­rage die man­dan­ten­spe­zi­fi­sche Tren­nung bei. Die Lösung für die Ana­ly­se­ebene war eine Abs­trak­ti­ons­schicht mit Union-Views. Diese vir­tu­el­len Schich­ten füh­ren die Daten der ver­schie­de­nen Län­der logisch zusam­men und prä­sen­tie­ren den BI-Anwen­dun­gen ein har­mo­ni­sier­tes Gesamt­bild mit dem Län­der­kenn­zei­chen als zusätz­li­chen fach­li­chen Schlüs­sel. So konn­ten wir die Per­for­mance sta­bil hal­ten, ohne die bewährte his­to­ri­sche Daten­ba­sis phy­sisch umschrei­ben zu müssen.

1. Kern­frage: Wie gelingt die Landeszuordnung?

Da das Quell­sys­tem keine phy­si­ka­li­sche Tren­nung mehr vor­gab, war die Iden­ti­fi­ka­tion geeig­ne­ter Attri­bute zur Lan­des­er­ken­nung unsere erste große Hürde. Ein sol­ches Merk­mal muss zwei ent­schei­dende Eigen­schaf­ten haben: Einer­seits muss es über alle Län­der hin­weg kon­sis­tent ver­wen­det wer­den. Ande­rer­seits muss es inner­halb der gesam­ten Orga­ni­sa­tion eine ein­heit­li­che Bedeu­tung besitzen.

Die fach­li­che Per­spek­tive: Kon­text ist alles

Hin­ter den Kulis­sen der SQL-Abfra­gen spielt die fach­li­che Per­spek­tive eine ent­schei­dende Rolle. Wir lern­ten schnell, dass „Land“ schließ­lich nicht gleich „Land“ ist. Beson­ders bei logis­ti­schen Daten ist die Sicht­weise ent­schei­dend, ob man die Lan­des­zu­ord­nung aus Sicht der Ver­kaufs­or­ga­ni­sa­tion (VKORG) oder der Ein­kaufs­or­ga­ni­sa­tion (EKORG) vor­nimmt. Spe­zi­ell bei inter­na­tio­na­len Inter-Com­pany-Pro­zes­sen wei­chen die Ein­kaufs- und Ver­kaufs­län­der von­ein­an­der ab. Die Daten eines Ver­teil­zen­trums in einem benach­bar­ten Land, das eine Filiale in Deutsch­land belie­fert. Dem­entspre­chend flag­gen wir die Daten je nach Berichts­an­for­de­rung unterschiedlich.

Nach einer gründ­li­chen Busi­ness-Ana­lyse und vie­len Inter­views mit den Fach­be­rei­chen konn­ten wir mit Berück­sich­ti­gung der Anfor­de­run­gen im Bericht­we­sen fol­gende Attri­bute für die­sen Zweck identifizieren:

  • Ein­kaufs- und Ver­kaufs­or­ga­ni­sa­tio­nen für logis­ti­sche sowie Betriebs- oder Distributionsdaten.
  • Betriebs‑, Filial- oder Ver­teil­zen­trum-IDs für Immo­bi­lien- oder Sortimentsdaten.
  • Der Buchungs- oder Kos­ten­rech­nungs­kreis für Finanz- und Rechnungsdaten.
  • Sprach­schlüs­sel für Stamm­da­ten mit Text oder Produktbeschreibungen.

Tech­ni­sche Umset­zung und ISO-Standards

Um die Län­der­er­ken­nung daten­ge­trie­ben und zukunfts­si­cher umzu­set­zen, defi­nier­ten wir zen­trale Refe­renz­ta­bel­len. Für eine kon­sis­tente Abbil­dung nutz­ten wir kon­se­quent das zwei­stel­lige ISO-3166-Alpha-2-For­mat. Dem­entspre­chend wird in unse­ren ETL-Pro­zes­sen das Län­der­kenn­zei­chen für jede ein­ge­hende ID auto­ma­tisch ermit­telt. Dafür haben wir zen­trale Loo­kups oder User-Defi­ned-Func­tions (UDF) eingesetzt.

Detail­be­trach­tung: Sprach­schlüs­sel als Beispiel

Ein beson­ders span­nen­des Merk­mal für die Lan­des­er­ken­nung der Arti­kel­be­schrei­bun­gen in einem Retail-Sys­tem ist der Sprach­schlüs­sel. Aller­dings zeig­ten sich genau hier zwei tech­ni­sche Knack­punkte, die eine beson­ders raf­fi­nierte Aus­ge­stal­tung der ETL-Logik erforderten.

1. Die Vor­ge­hens­weise bei Default-Spra­chen: In vie­len Sys­te­men wird eine Spra­che (oft Eng­lisch oder die Kon­zern­spra­che) als „Default“ defi­niert. Das bedeu­tet: Liegt keine spe­zi­fi­sche Beschrei­bung in der Lan­des­spra­che vor, wird auf den Default-Text zurück­ge­grif­fen. Tech­nisch bedeu­tet das: Wir müs­sen diese Default-Daten­sätze in alle rele­van­ten Län­der­ta­bel­len repli­zie­ren, sofern zu dem Pri­mär­schlüs­sel kein Daten­satz in Lan­des­spra­che vor­han­den ist. Um sicher­zu­stel­len, dass nicht beide Ein­träge im DWH lan­den, imple­men­tier­ten wir eine Prio­ri­sie­rungs­lo­gik mit­tels Win­do­wing-Funk­tion, die in dem letz­ten Schritt vor dem Laden der Daten in DWH prüft, ob bereits ein Daten­satz in der Lan­des­spra­che exis­tiert. Falls ja, wird der Default-Ein­trag verworfen.

Example of windowing function for determining the language key. Correct country specification can help with the data harmonization

2. Sprach­über­schnei­dun­gen: Die zweite Her­aus­for­de­rung ist geo­gra­fisch-sprach­li­cher Natur: Län­der wie Deutsch­land und Öster­reich oder Ser­bien und Bos­nien tei­len sich oft den­sel­ben Sprach­schlüs­sel. Hier reicht ein ein­fa­cher 1‑zu-1-Lookup nicht aus. In sol­chen Fäl­len haben wir mit einem Left-Join die Daten­sätze in die rele­van­ten Län­der­ta­bel­len repli­ziert. Das heißt, dass die Daten gege­be­nen­falls ver­viel­facht bzw. kon­kret im Falle von Deutsch­land und Öster­reich ver­dop­pelt werden.

Example for language overlapping. Several countries share the same language, and this phenomenon is known as linguistic diversity.

2. Kern­frage: Brü­cken­schlag zur Historie

Die kom­ple­xeste fach­li­che Her­aus­for­de­rung in die­sem Pro­jekt war der Umgang mit der über zehn­jäh­ri­gen His­to­rie. Da das neue Quell­sys­tem eine völ­lig neue, har­mo­ni­sierte Codie­rungs­lo­gik ein­führte, muss­ten wir eine Brü­cke zwi­schen den alten län­der­spe­zi­fi­schen IDs und den neuen glo­ba­len Schlüs­seln schlagen.

Her­aus­for­de­rung 1: Die Gefahr der ID-Kol­li­sion beim Mapping

Bevor wir uns den tech­ni­schen Details wid­me­ten, muss­ten wir ein exis­ten­zi­el­les Risiko adres­sie­ren: ID-Über­schnei­dun­gen zwi­schen altem und neuem Sys­tem. Unser Archi­tek­tur­an­satz sieht vor, dass neue IDs aus der Quelle zunächst gegen Map­ping-Tabel­len geprüft wer­den. Fin­det sich eine Über­set­zung, erfolgt die Umschlüs­se­lung auf die alte ID. Fin­det sich keine, wird sie als neuer Daten­satz ver­ar­bei­tet. So gewähr­leis­ten wir die Ana­lyse der his­to­ri­schen Daten, wäh­rend gleich­zei­tig neue IDs aus dem har­mo­ni­sier­ten Sys­tem 1:1 im DWH ver­ar­bei­tet wer­den können.

Die Gefahr dabei: Wenn eine neue ID zufäl­lig iden­tisch mit einer bereits exis­tie­ren­den alten ID ist, wür­den his­to­ri­sche Daten fälsch­li­cher­weise über­schrie­ben. Neh­men wir an, der neue Lie­fe­rant Bien­lein Logis­tik erhält im neuen Sys­tem die ID 65934. Da Bien­lein Logis­tik neu ist, gibt es kein Map­ping zu der ID. Der ETL-Pro­zess würde des­halb diese ID 1:1 ins DWH schrei­ben. Doch im DWH exis­tiert bereits seit Jah­ren der Lie­fe­rant Pingu Gut­mann mit genau die­ser alten ID 65934. Ohne eine strikte Tren­nung der Num­mern­kreise würde das Sys­tem die his­to­ri­schen Daten von Pingu Gut­mann mit den Infor­ma­tio­nen der Bien­lein Logis­tik über­schrei­ben. Die­ser „Clash“ musste durch eine sorg­fäl­tige Defi­ni­tion der neuen Num­mern­kreise für kri­ti­sche Attri­bute wie Lie­fe­ran­ten- oder Arti­kel­num­mern im Vor­feld zwin­gend aus­ge­schlos­sen werden.

Her­aus­for­de­rung 2: Datentyp-Konflikte

Ein tech­ni­sches High­light war die Har­mo­ni­sie­rung der Ver­sand­stel­len. Im On-Prem DWH war das Attri­but Ver­sand­stelle als SMALLINT (bis 32.767) defi­niert. Die Fach­ab­tei­lung wünschte sich jedoch neue IDs, die ein Lan­des- und Regio­nal­merk­mal ent­hal­ten soll­ten, um die Her­kunft auf den ers­ten Blick für die Fach­an­wen­der erkenn­bar zu machen.

Da wir den Daten­typ nicht glo­bal ändern konn­ten, nutz­ten wir einen tech­ni­schen Kniff: Eine Basis-24-Codie­rung. Die neue ID setzt sich aus einem Buch­sta­ben für das Land, einer 2‑stelligen Regio­nal­num­mer in Basis 24 und einer loka­len lau­fen­den Num­mer zusam­men. Mathe­ma­tisch ermög­lichte dies dem Fach­be­reich die Defi­ni­tion von bis zu 575 (24 * 24 – 1) unter­schied­li­chen Ver­sand­stel­len-IDs – ein kom­for­ta­bler Puf­fer nach oben. Tech­nisch wan­del­ten wir die Basis-24-Kom­po­nente in einen Dezi­mal­wert um und häng­ten die lau­fende Num­mer an, um die IDs mathe­ma­tisch in die bestehende SMALL­INT-Logik zurück­zu­füh­ren und gleich­zei­tig sicher­zu­stel­len, dass die IDs ein­deu­tig bleiben.

Example for calculating the numeric value of an alphanumeric ID.

Her­aus­for­de­rung 3: Dyna­mi­sche Nummernkreise

Für Attri­bute wie Beleg­num­mern (Rech­nun­gen, Bestel­lun­gen) bezo­gen wir uns pri­mär auf das lau­fende Geschäfts­jahr. Ab der Migra­tion wur­den bei­spiels­weise Rech­nungs­num­mern 10-stel­lig mit einer füh­ren­den „8“ defi­niert. Diese Umschlüs­se­lung ist weit­ge­hend unab­hän­gig von der tie­fen His­to­rie umsetz­bar, da ab dem neuen Geschäfts­jahr ohne­hin der neue har­mo­ni­sierte Num­mern­kreis greift. Den­noch war hier unter­neh­mens­über­grei­fen­des Fach­wis­sen gefragt, um sicher­zu­stel­len, dass Num­mern­kreise für unter­schied­li­che Beleg­ar­ten kon­sis­tent über alle Län­der hin­weg defi­niert wurden.

Zusam­men­fas­sung: Tech­ni­sche Mei­len­steine der Harmonisierung

Bli­cken wir auf das Pro­jekt zurück, las­sen sich die zen­tra­len tech­ni­schen Erfolge zusam­men­fas­send in drei Säu­len unterteilen:

  1. Vir­tu­elle Kon­so­li­die­rung statt phy­si­scher Migra­tion: Die Ent­schei­dung gegen den „Big Bang“ und für die Union-View-Archi­tek­tur war der Schlüs­sel zum Erfolg. Sie ermög­lichte es uns, die neue, har­mo­ni­sierte Quell­welt sofort nutz­bar zu machen, wäh­rend die Peta­bytes an his­to­ri­schen Daten sicher und per­for­mant in ihren ursprüng­li­chen Sche­mata verblieben.
  2. Intel­li­gente Iden­ti­fi­ka­tion im ETL-Layer: Durch die Nut­zung von ISO-Stan­dards und kon­text­ab­hän­gi­gen Attri­bu­ten (wie VKORG/EKORG oder Sprach­schlüs­seln) haben wir die ver­lo­ren gegan­gene län­der­spe­zi­fi­sche Iden­ti­tät der Daten im har­mo­ni­sier­ten Daten­strom erfolg­reich rekonstruiert.
  3. Mathe­ma­ti­sche Brü­cken­schläge: Lösun­gen wie die Basis-24-Codie­rung zei­gen, dass man tech­ni­sche Limi­ta­tio­nen (wie starre Daten­ty­pen in On-Prem-Sys­te­men) durch mathe­ma­ti­sche Logik über­win­den kann, ohne die Daten­in­te­gri­tät zu opfern.

Fazit: Daten­en­gi­nee­ring als Brü­cke zwi­schen Busi­ness und Technologie

Die Har­mo­ni­sie­rung eines Multi-Man­dan­ten-DWH in einem inter­na­tio­na­len Retail-Umfeld ist weit mehr als eine reine Daten­bank­ope­ra­tion. Sie erfor­dert viel­mehr ein tie­fes Ver­ständ­nis für die Geschäfts­his­to­rie, die logis­ti­schen Abläufe und eine klare Vision für die Zukunft.

Wir haben gelernt, dass eine erfolg­rei­che Har­mo­ni­sie­rung an der Quelle (das „Ein-Sys­tem-Ziel“) zwangs­läu­fig neue Auf­ga­ben im DWH erzeugt. Die Kunst des Data Engi­nee­ring besteht hier darin, diese Anfor­de­run­gen durch intel­li­gente Map­ping-Logi­ken und vir­tu­elle Layer abzufangen.

Heute ist unser Sys­tem weit mehr als nur ein digi­ta­les Archiv. Es ist ein kon­sis­ten­tes, unter­neh­mens­wei­tes Fun­da­ment. Die Brü­cke zwi­schen der „alten“ län­der­spe­zi­fi­schen Welt und der „neuen“ glo­ba­len Logik ist geschla­gen. Infol­ge­des­sen bie­tet sie die per­fekte Start­rampe für Advan­ced Ana­ly­tics und KI-Pro­jekte, die auf eine sau­bere, his­to­ri­sierte Daten­ba­sis ange­wie­sen sind. On-Prem ist in die­sem Kon­text kein Hin­der­nis, son­dern – mit den rich­ti­gen Knif­fen – eine hoch­sta­bile und leis­tungs­fä­hige Platt­form für die Zukunft.