SSIS-Importe für SAP HANA

Wenn Delta­Master auf Daten aus SAP HANA zugreift, sind die­se in der Regel bereits vor­han­den. Manch­mal kommt es vor, dass zusätz­li­che oder exter­ne Daten­quel­len ange­bun­den wer­den sol­len. Dies ist der Fall z. B. bei Demo-Sys­te­men, die häu­fig als Excel- oder CSV-Datei­en vor­lie­gen, In die­sem Arti­kel erläu­tern wir, wie Daten­sät­ze aus sol­chen Daten­quel­len per SQL Ser­ver Inte­gra­ti­on Ser­vices (SSIS) in SAP-HANA impor­tiert wer­den kön­nen und was dabei zu beach­ten ist. Dabei gehen wir auch auf mög­li­che Pro­ble­me ein und zei­gen, wie mit die­sen umzu­ge­hen ist. wei­ter­le­sen…

OLAP-Datenexport im ETL-Prozess mit SSIS und Berichtsserver

Im Bei­trag Export von OLAP-Daten in eine SQL-Tabel­le” ist beschrie­ben, wie mit­tels Lin­ked-Ser­ver und T-SQL Befeh­len (Open­Que­ry) die Abfra­ge von OLAP-Daten und Über­nah­me in eine SQL-Tabel­le des Micro­soft SQL-Ser­vers aus­se­hen kann.
Nach­fol­gend wird betrach­tet, wie ein sol­cher Daten­ab­zug alter­na­tiv direkt mit­tels Micro­soft SSIS erstellt wird. Einen Blick wert sind auch die Export­mög­lich­kei­ten des Delta­Master Berichts­ser­ver mit der inter­es­san­ten Mög­lich­keit, die­sen in einen SSIS basie­ren­den ETL-Pro­zess ein­zu­bin­den, um Wür­fel­da­ten zu expor­tie­ren. Das ist bei­spiels­wei­se dann eine Alter­na­ti­ve, wenn das manu­el­le Erstel­len aus­ge­feil­ter MDX-Abfra­gen Schwie­rig­kei­ten berei­tet und durch das ein­fa­che Erstel­len von geeig­ne­ten Delta­Master Berich­ten ersetzt wer­den kann. Zusam­men mit den Ite­ra­ti­ons- und Vor­ein­stel­lungs­mög­lich­kei­ten des Berichts­ser­vers ergibt sich für den Daten­ex­port eine hohe Fle­xi­bi­li­tät. wei­ter­le­sen…

SSIS: Mehrere Verbindungsmanager, ein Container

Es kommt mit­un­ter vor, daß struk­tur­glei­che Daten im Lade­pro­zess aus ver­schie­de­nen Daten­quel­len in das Sys­tem über­führt wer­den müs­sen.
Um hier nicht für jede Daten­quel­le einen eige­nen Pro­zesschritt anle­gen zu müs­sen, bie­tet sich die Mög­lich­keit an, in der Orga­ni­sa­ti­on der Daten­ein­spei­sung einen Con­tai­ner zu ver­wen­den, der einen Loop über die ver­schie­de­nen Quel­len durch­führt. Dabei wer­den die Con­nec­tion Strings zunächst in eine varia­ble gespei­chert und dann zur Lauf­zeit abge­ar­bei­tet. Die tech­ni­sche Umset­zung die­ser Arbeits­er­spar­nis wird im Fol­gen­den dar­ge­stellt. wei­ter­le­sen…

Duplikat oder Fuzzy?

In mei­nen bei­den vor­he­ri­gen Bei­trags habe ich einen Pro­zess zur Erken­nung bereits vor­han­de­ner Daten­sät­ze in einer Ziel­da­ten­bank gezeigt. Was aber tun, wenn mei­ne Daten zwar auf Fel­debe­ne gleich sein soll­ten, es aber de fac­to nicht sind? Der Vor­na­me ist in dem einen Fall aus­ge­schrie­ben, im ande­ren Fall nicht. Es haben sich Tipp­feh­ler ein­ge­schli­chen, und so wei­ter. Das Gan­ze dann auch noch in Kom­bi­na­ti­on und das Daten­cha­os ist per­fekt. Aber ein nor­ma­ler Zustand in der rea­len Welt der Soft­ware­ver­wal­tung.
Im Rah­men eines Kun­den­pro­jek­tes für ein Kos­ten­con­trol­ling kam die Fra­ge auf, war­um im Bereich von Soft­ware­li­zen­zen ste­tig stei­gen­de Kos­ten zu ver­zeich­nen sind, wenn­gleich die Per­so­nal­stär­ke auf ihrem Niveau sta­gniert. Eine Hypo­the­se war, dass unnö­ti­ge Lizen­zen bezahlt wer­den. Wir wur­den um Rat gefragt und dar­aus ent­stand die Idee, ein Benut­zer­ma­nage­ment mit Hil­fe von Delta­Master ein­zu­füh­ren, damit Ände­run­gen an den Per­so­nal­struk­tu­ren auch in die Ziel­sys­te­me wei­ter­ge­tra­gen wer­den. Denn die­se bil­den schließ­lich die Basis für die Abrech­nung der benutz­ten Lizen­zen. Rich­tig gele­sen, benutz­te Lizen­zen, wel­che aber sind das? Ziel soll­te sein, alle Benut­zer aus den Stamm­da­ten der unter­schied­lichs­ten Sys­te­me je sei­nem Pen­dant im Active Direc­to­ry (AD) zuzu­ord­nen. Wel­ches ist aber sein Pen­dant, wenn die Inhal­te eben nicht genau über­ein­stim­men? Dupli­kat oder nicht?
An genau die­ser Stel­le kam uns die Idee einer soge­nann­ten Fuz­zy­suche (engl. fuz­zy = undeut­lich, unscharf). Dabei geht es kurz gesagt um inhalt­li­che Ähn­lich­kei­ten von Zei­chen­fol­gen, defi­nier­bar mit Schwell­wer­ten. Die­se ist ein Bestand­teil der Inte­gra­ti­on Ser­vices des MS SQL Ser­vers (kurz: SSIS) seit der Ver­si­on 2005 und kann mit Hil­fe des BI Deve­lop­ment Stu­di­os (kurz: BIDS) in jeg­li­che ETL-Pro­zes­se inte­griert wer­den. Las­sen Sie uns die­ses Hel­fer­lein heu­te ein­mal genau­er unter die Lupe neh­men. wei­ter­le­sen…

Immer diese Stammdaten

In unse­rer schnell­le­bi­gen Welt ändern sich die Daten (Wer­te) so schnell, dass die gro­ße Her­aus­for­de­rung in der Aktua­li­tät die­ser Daten liegt. Nun ken­nen wir dies The­ma prak­tisch in jedem Pro­jekt und wie so oft gibt es diver­se Lösungs­we­ge, die mehr oder weni­ger auf­wän­dig und kom­plex zu imple­men­tie­ren sind. Eine Mög­lich­keit sich dem Pro­blem zu nähern ist der Ein­satz einer Trans­for­ma­ti­on im BI Deve­lop­ment Stu­dio (kurz: BIDS), dem Look­up-Task (Ach­tung: erst ab SQL-Ser­ver 2008 ein­setz­bar). Ver­ein­facht dar­ge­stellt bie­tet der Look­up-Task eine Art Ver­än­de­rungs­lo­gik, sprich: was ändert sich wann, wie und wo. Da die­ser Schritt, je nach Kon­fi­gu­ra­ti­on, unter­schied­lichs­te Kom­ple­xi­tä­ten anneh­men kann, begin­ne ich zunächst mit der ein­fachs­ten, trotz­dem schon sehr nütz­li­chen Vari­an­te. In einem zwei­ten Bei­trag wer­den wir dann die­ses Pro­jekt um wei­te­re Funk­tio­na­li­tä­ten erwei­tern. wei­ter­le­sen…