{"id":95021,"date":"2020-09-24T19:42:23","date_gmt":"2020-09-24T17:42:23","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/ekstrakcziya-dannyh-iz-sap-hcm-v-non-sap-hranilishha-dannyh"},"modified":"2020-09-24T19:42:23","modified_gmt":"2020-09-24T17:42:23","slug":"ekstrakcziya-dannyh-iz-sap-hcm-v-non-sap-hranilishha-dannyh","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/ekstrakcziya-dannyh-iz-sap-hcm-v-non-sap-hranilishha-dannyh","title":{"rendered":"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Jak wiadomo, firma SAP oferuje pe\u0142en zakres oprogramowania, zar\u00f3wno do zarz\u0105dzania danymi transakcyjnymi, jak i ich analizy i raportowania. W szczeg\u00f3lno\u015bci platforma SAP Business Warehouse (SAP BW) stanowi zestaw narz\u0119dzi do przechowywania i analizy danych, posiadaj\u0105cy szerokie mo\u017cliwo\u015bci techniczne. Pomimo wszystkich swoich obiektywnych zalet, system SAP BW ma jedn\u0105 istotn\u0105 wad\u0119: wysokie koszty przechowywania i przetwarzania danych, co jest szczeg\u00f3lnie zauwa\u017calne w przypadku korzystania z chmurowego rozwi\u0105zania SAP BW on Hana. <\/p>\n<p>A co je\u015bli jako magazyn zacz\u0105\u0107 u\u017cywa\u0107 jakiego\u015b produktu non-SAP, najlepiej OpenSource? W H5 Retail Group zdecydowali\u015bmy si\u0119 na GreenPlum. To oczywi\u015bcie rozwi\u0105zuje problem koszt\u00f3w, ale natychmiast rodzi pytania, kt\u00f3re w przypadku u\u017cywania SAP BW by\u0142y rozwi\u0105zywane praktycznie automatycznie.<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/6b4bb611a259df02dd89d922669e0c04.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nW szczeg\u00f3lno\u015bci, w jaki spos\u00f3b pobiera\u0107 dane z system\u00f3w \u017ar\u00f3d\u0142owych, kt\u00f3re w wi\u0119kszo\u015bci przypadk\u00f3w s\u0105 rozwi\u0105zaniami SAP?<\/p>\n<p>Projekt \"HR-metryki\" sta\u0142 si\u0119 pierwszym projektem, w kt\u00f3rym nale\u017ca\u0142o rozwi\u0105za\u0107 ten problem. Naszym celem by\u0142o stworzenie magazynu danych HR oraz budowa raport\u00f3w analitycznych dotycz\u0105cych pracy z pracownikami. G\u0142\u00f3wnym \u017ar\u00f3d\u0142em danych jest system transakcyjny SAP HCM, w kt\u00f3rym prowadzone s\u0105 wszelkie dzia\u0142ania zwi\u0105zane z kadrami, organizacj\u0105 i wynagrodzeniem. <\/p>\n<h3>Ekstrakcja danych<\/h3>\n<p>\nW SAP BW dla system\u00f3w SAP istniej\u0105 standardowe ekstraktory danych. Ekstraktory te mog\u0105 automatycznie zbiera\u0107 potrzebne dane, monitorowa\u0107 ich integralno\u015b\u0107 oraz okre\u015bla\u0107 zmiany. Oto na przyk\u0142ad standardowe \u017ar\u00f3d\u0142o danych dotycz\u0105ce atrybut\u00f3w pracownika 0EMPLOYEE_ATTR:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/fff6e630fec37faf0e6224a4b64a007f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWynik ekstrakcji danych z niego dla jednego pracownika:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/126eb3e74b57d0116db9272b5695f39d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nW razie potrzeby taki ekstraktor mo\u017ce by\u0107 dostosowany do w\u0142asnych wymaga\u0144 lub mo\u017cna stworzy\u0107 w\u0142asny ekstraktor. <\/p>\n<p>Jako pierwsza pojawi\u0142a si\u0119 idea ich ponownego wykorzystania. Niestety, okaza\u0142o si\u0119 to zadaniem niemo\u017cliwym do zrealizowania. Wi\u0119kszo\u015b\u0107 logiki zosta\u0142a zrealizowana po stronie SAP BW i nie uda\u0142o si\u0119 bezbole\u015bnie oddzieli\u0107 ekstraktora na \u017ar\u00f3dle od SAP BW. <\/p>\n<p>Sta\u0142o si\u0119 oczywiste, \u017ce konieczne b\u0119dzie opracowanie w\u0142asnego mechanizmu ekstrakcji danych z system\u00f3w SAP. <\/p>\n<h3>Struktura przechowywania danych w SAP HCM<\/h3>\n<p>\nAby zrozumie\u0107 wymagania dotycz\u0105ce takiego mechanizmu, nale\u017cy najpierw okre\u015bli\u0107, jakie dok\u0142adnie dane b\u0119d\u0105 potrzebne.<\/p>\n<p>Wi\u0119kszo\u015b\u0107 danych w SAP HCM jest przechowywana w p\u0142askich tabelach SQL. Na podstawie tych danych aplikacje SAP wizualizuj\u0105 u\u017cytkownikowi struktury organizacyjne, pracownik\u00f3w i inne informacje HR. Na przyk\u0142ad, tak wygl\u0105da struktura organizacyjna w SAP HCM:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/2f60b2062467fcfa425b5d02fbf6a45d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nFizycznie takie drzewo jest przechowywane w dw\u00f3ch tabelach \u2014 w hrp1000 obiekty oraz w hrp1001 powi\u0105zania mi\u0119dzy tymi obiektami. <\/p>\n<p>Obiekty \u201eDepartament 1\u201d i \u201eZarz\u0105d 1\u201d:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/d8a8c9ecc1a0023ae6cc9d5a78111a9c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPowi\u0105zanie mi\u0119dzy obiektami:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/07bb44acfc8d8d10d895ecc790b9e3a2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMo\u017ce istnie\u0107 ogromna liczba zar\u00f3wno typ\u00f3w obiekt\u00f3w, jak i typ\u00f3w powi\u0105za\u0144 mi\u0119dzy nimi. Istniej\u0105 zar\u00f3wno standardowe powi\u0105zania mi\u0119dzy obiektami, jak i dostosowane do specyficznych potrzeb. Na przyk\u0142ad standardowe powi\u0105zanie B012 mi\u0119dzy jednostk\u0105 organizacyjn\u0105 a stanowiskiem okre\u015bla kierownika jednostki.<\/p>\n<p>Wy\u015bwietlanie kierownika w SAP:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/fb636054004f8c0f06a6edcdec971664.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPrzechowywanie w tabeli bazy danych:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/6ec59a249b80ac7fa1ed5a243532af58.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDane pracownik\u00f3w s\u0105 przechowywane w tabelach pa*. Na przyk\u0142ad dane dotycz\u0105ce zdarze\u0144 kadrowych pracownika s\u0105 przechowywane w tabeli pa0000.<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/97403c61cbc95aad064008c3956a970b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nZdecydowali\u015bmy, \u017ce GreenPlum b\u0119dzie pobiera\u0142 \u201esurowe\u201d dane, tzn. po prostu kopiowa\u0142 je z tabel SAP. A nast\u0119pnie w GreenPlum b\u0119d\u0105 one przetwarzane i przekszta\u0142cane w obiekty fizyczne (na przyk\u0142ad Departament lub Pracownik) oraz metryki (na przyk\u0142ad \u015brednia liczba etat\u00f3w).<\/p>\n<p>Okre\u015blono oko\u0142o 70 tabel, z kt\u00f3rych dane nale\u017cy przekaza\u0107 do GreenPlum. Nast\u0119pnie przyst\u0105pili\u015bmy do opracowania sposobu przekazywania tych danych.<\/p>\n<p>SAP oferuje do\u015b\u0107 du\u017c\u0105 liczb\u0119 mechanizm\u00f3w integracji. Jednak najprostszym sposobem \u2014 bezpo\u015bredni dost\u0119p do bazy danych jest zabroniony z powodu ogranicze\u0144 licencyjnych. W ten spos\u00f3b wszystkie potoki integracyjne musz\u0105 by\u0107 realizowane na poziomie <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pl\/server\/dts-los-angeles\/\"   title=\"serwera\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3660\">serwera<\/a> aplikacji. <br \/>\nKolejnym problemem by\u0142 brak danych o usuni\u0119tych rekordach w bazie danych SAP. Przy usuni\u0119ciu wiersza w bazie danych, zostaje on fizycznie usuni\u0119ty. To znaczy, \u017ce nie by\u0142o mo\u017cliwe utworzenie delta zmian w oparciu o czas zmiany.<\/p>\n<p>Oczywi\u015bcie, w SAP HCM istniej\u0105 mechanizmy rejestrowania zmian danych. Na przyk\u0142ad, w celu p\u00f3\u017aniejszego przesy\u0142ania do system\u00f3w odbieraj\u0105cych istniej\u0105 wska\u017aniki zmian (change pointer), kt\u00f3re rejestruj\u0105 wszelkie zmiany i na ich podstawie tworzone s\u0105 Idoc (obiekt do przesy\u0142ania do system\u00f3w zewn\u0119trznych).<\/p>\n<p>Przyk\u0142ad zmiany infotypu 0302 u pracownika o numerze identyfikacyjnym 1251445:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/029509bbb519b7dd9703f8d4dac0f269.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLub prowadzenie dziennik\u00f3w zmian danych w tabeli DBTABLOG.<\/p>\n<p>Przyk\u0142ad dziennika usuni\u0119cia rekordu z kluczem QK53216375 z tabeli hrp1000:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/5772891975d494da11cc530ed5cb533e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nJednak te mechanizmy nie s\u0105 dost\u0119pne dla wszystkich niezb\u0119dnych danych, a ich przetwarzanie na poziomie serwera aplikacji mo\u017ce zu\u017cywa\u0107 do\u015b\u0107 du\u017co zasob\u00f3w. Dlatego masowe w\u0142\u0105czenie logowania dla wszystkich niezb\u0119dnych tabel mo\u017ce prowadzi\u0107 do zauwa\u017calnej degradacji wydajno\u015bci systemu. <\/p>\n<p>Kolejnym powa\u017cnym problemem by\u0142y tabele klastrowe. Dane dotycz\u0105ce oceny czasu i oblicze\u0144 p\u0142ac w wersji RDBMS SAP HCM s\u0105 przechowywane w postaci zestawu logicznych tabel dla ka\u017cdego pracownika za ka\u017cde obliczenie. Te logiczne tabeli w postaci danych binarnych przechowywane s\u0105 w tabeli pcl2.<\/p>\n<p>Klastr oblicze\u0144 p\u0142acowych:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/18bfd42ec7c43018d5c156eea9b5ed23.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDane z tabel klastrowych nie mog\u0105 by\u0107 odczytywane za pomoc\u0105 polecenia SQL, wymagana jest u\u017cycie makrokomend SAP HCM lub specjalnych modu\u0142\u00f3w funkcjonalnych. W zwi\u0105zku z tym pr\u0119dko\u015b\u0107 odczytu takich tabel b\u0119dzie do\u015b\u0107 niska. Z drugiej strony, w takich klastrach przechowywane s\u0105 dane, kt\u00f3re s\u0105 potrzebne tylko raz w miesi\u0105cu \u2013 podsumowanie oblicze\u0144 p\u0142acowych i ocena czasu. Zatem pr\u0119dko\u015b\u0107 w tym przypadku nie jest tak krytyczna. <\/p>\n<p>Oceniaj\u0105c opcje dotycz\u0105ce generowania delty zmian danych, zdecydowano r\u00f3wnie\u017c rozwa\u017cy\u0107 opcj\u0119 z pe\u0142nym zrzutem. Opcja przesy\u0142ania gigabajt\u00f3w niezmiennych danych ka\u017cdego dnia mi\u0119dzy systemami nie wydaje si\u0119 szczeg\u00f3lnie atrakcyjna. Jednak ma ona r\u00f3wnie\u017c szereg zalet \u2013 nie ma potrzeby realizacji delty po stronie \u017ar\u00f3d\u0142a, ani jej wklejania po stronie odbiorcy. W zwi\u0105zku z tym zmniejsza si\u0119 koszt i czas realizacji, a tak\u017ce zwi\u0119ksza si\u0119 niezawodno\u015b\u0107 integracji. Ustalono r\u00f3wnie\u017c, \u017ce praktycznie wszystkie zmiany w SAP HR zachodz\u0105 w okresie trzech miesi\u0119cy przed aktualn\u0105 dat\u0105. W zwi\u0105zku z tym podj\u0119to decyzj\u0119 o codziennym pe\u0142nym zrzucie danych z SAP HR za N miesi\u0119cy przed aktualn\u0105 dat\u0105 oraz miesi\u0119cznym pe\u0142nym zrzucie. Parametr N zale\u017cy od konkretnej tabeli<br \/>\n i waha si\u0119 od 1 do 15.<\/p>\n<p>Dla ekstrakcji danych zaproponowano nast\u0119puj\u0105cy schemat:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/298df4f63c6ea4779c49927048e66ec3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nZewn\u0119trzny system generuje zapytanie i przesy\u0142a je do SAP HCM, gdzie zapytanie jest weryfikowane pod k\u0105tem kompletno\u015bci danych i uprawnie\u0144 dost\u0119pu do tabel. W przypadku pomy\u015blnej weryfikacji w SAP HCM uruchamiany jest program, kt\u00f3ry zbiera potrzebne dane i przekazuje je do rozwi\u0105zania integracyjnego Fuse. Fuse okre\u015bla odpowiedni temat w Kafka i przesy\u0142a dane tam. Nast\u0119pnie dane z Kafka s\u0105 przesy\u0142ane do Strefy GP.<\/p>\n<p>W tej sieci interesuje nas kwestia wydobywania danych z SAP HCM. Przyjrzyjmy mu si\u0119 bli\u017cej. <\/p>\n<p>Schemat interakcji SAP HCM-FUSE.<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/eeb50901515e019567223044d46c3879.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nZewn\u0119trzny system okre\u015bla czas ostatniego pomy\u015blnego zapytania w SAP.<br \/>\nProces mo\u017ce by\u0107 uruchamiany na podstawie timera lub innego zdarzenia, w tym mo\u017ce by\u0107 ustawiony czas oczekiwania na odpowied\u017a z danymi z SAP i zainicjowanie ponownego zapytania. Nast\u0119pnie formu\u0142uje zapytanie r\u00f3\u017cnicy i przesy\u0142a je do SAP.<\/p>\n<p>Dane zapytania s\u0105 przesy\u0142ane w tre\u015bci w formacie json.<br \/>\nMetoda http: POST.<br \/>\nPrzyk\u0142ad zapytania:<\/p>\n<p><img decoding=\"async\" alt=\"Ekstrakcja danych z SAP HCM do magazyn\u00f3w danych non-SAP\" src=\"\/wp-content\/uploads\/2020\/09\/00bc84714a0f650b736109c3bcd2a5e5.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <br \/>\nSerwis SAP wykonuje kontrol\u0119 zapytania pod k\u0105tem kompletno\u015bci, zgodno\u015bci z aktualn\u0105 struktur\u0105 SAP oraz dost\u0119pno\u015bci uprawnienia dost\u0119pu do \u017c\u0105danej tabeli. <\/p>\n<p>W przypadku b\u0142\u0119d\u00f3w serwis zwraca odpowied\u017a z odpowiednim kodem i opisem. W przypadku pomy\u015blnej kontroli tworzy proces w tle do generowania danych, generuje i synchronizacyjnie zwraca unikalny identyfikator sesji. <\/p>\n<p>W przypadku b\u0142\u0119du zewn\u0119trzny system rejestruje go w dzienniku. W przypadku pomy\u015blnej odpowiedzi przesy\u0142a identyfikator sesji oraz nazw\u0119 tabeli, do kt\u00f3rej z\u0142o\u017cono zapytanie.<\/p>\n<p>Zewn\u0119trzny system rejestruje bie\u017c\u0105c\u0105 sesj\u0119 jako otwart\u0105. Je\u015bli istniej\u0105 inne sesje zwi\u0105zane z t\u0105 tabel\u0105, s\u0105 one zamykane z rejestracj\u0105 ostrze\u017cenia w dzienniku.<\/p>\n<p>Zadanie w tle SAP tworzy kursor dla zadanych parametr\u00f3w i pakiet danych o okre\u015blonym rozmiarze. Rozmiar pakietu to maksymalna liczba rekord\u00f3w, kt\u00f3re proces odczytuje z bazy danych. Domy\u015blnie przyjmuje si\u0119, \u017ce wynosi 2000. Je\u015bli w pr\u00f3bie bazy danych znajduje si\u0119 wi\u0119cej rekord\u00f3w ni\u017c przyj\u0119ty rozmiar pakietu, po przes\u0142aniu pierwszego pakietu tworzy si\u0119 nast\u0119pny blok z odpowiednim offsetem i inkrementowanym numerem pakietu. Numery s\u0105 inkrementowane o 1 i wysy\u0142ane \u015bci\u015ble w kolejno\u015bci. <\/p>\n<p>Nast\u0119pnie SAP przekazuje pakiet do zewn\u0119trznego systemu us\u0142ugi sieciowej. System ten wykonuje kontrole przychodz\u0105cego pakietu. W systemie musi by\u0107 zarejestrowana sesja z otrzymanym id i musi ona by\u0107 w stanie otwartym. Je\u015bli numer pakietu &gt; 1, w systemie musi by\u0107 zarejestrowane pomy\u015blne otrzymanie poprzedniego pakietu (package_id-1).<\/p>\n<p>W przypadku pomy\u015blnej kontroli zewn\u0119trzny system analizuje i zapisuje dane tabeli.<\/p>\n<p>Dodatkowo, je\u015bli w pakiecie znajduje si\u0119 flaga final i serializacja przebieg\u0142a pomy\u015blnie, modu\u0142 integracji jest informowany o pomy\u015blnym zako\u0144czeniu przetwarzania sesji, a modu\u0142 aktualizuje status sesji.<\/p>\n<p>W przypadku b\u0142\u0119du kontroli\/analizy, b\u0142\u0105d jest rejestrowany, a pakiety w tej sesji b\u0119d\u0105 odrzucane przez zewn\u0119trzny system.<\/p>\n<p>Podobnie w przeciwnym przypadku, gdy zewn\u0119trzny system zwraca b\u0142\u0105d, jest on rejestrowany, a przesy\u0142anie pakiet\u00f3w zostaje zako\u0144czone.<\/p>\n<p>Aby za\u017c\u0105da\u0107 danych ze strony SAP HCM, wdro\u017cono us\u0142ug\u0119 integracyjn\u0105. Us\u0142uga ta zosta\u0142a zrealizowana na frameworku ICF (SAP Internet Communication Framework \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/help.sap.com\/viewer\/6da7259a6c4b1014b7d5e759cc76fd22\/7.01.22\/en-US\/488d6e0ea6ed72d5e10000000a42189c.html\">help.sap.com\/viewer\/6da7259a6c4b1014b7d5e759cc76fd22\/7.01.22\/en-US\/488d6e0ea6ed72d5e10000000a42189c.html<\/a><\/noindex>). Umo\u017cliwia ona \u017c\u0105danie danych z systemu SAP HCM wed\u0142ug okre\u015blonych tabel. Przy tworzeniu \u017c\u0105dania danych mo\u017cliwe jest okre\u015blenie konkretnej listy p\u00f3l oraz parametr\u00f3w filtrowania w celu uzyskania wymaganych danych. Przy tym realizacja us\u0142ugi nie przewiduje \u017cadnej logiki biznesowej. Algorytmy obliczania delty, parametr\u00f3w \u017c\u0105dania, kontroli integralno\u015bci itp. s\u0105 r\u00f3wnie\u017c realizowane po stronie zewn\u0119trznego systemu.<\/p>\n<p>Mechanizm ten pozwala na zbieranie i przesy\u0142anie wszystkich niezb\u0119dnych danych w ci\u0105gu kilku godzin. Taka pr\u0119dko\u015b\u0107 znajduje si\u0119 na granicy akceptowalnej, dlatego to rozwi\u0105zanie rozwa\u017camy jako tymczasowe, kt\u00f3re pomog\u0142o zaspokoi\u0107 potrzeb\u0119 narz\u0119dzia ekstrakcji w projekcie.<br \/>\nW docelowej wizji rozwi\u0105zania do zadania ekstrakcji danych opracowywane s\u0105 opcje wykorzystania system\u00f3w CDC typu Oracle Golden Gate lub narz\u0119dzi ETL typu SAP DS.<br \/>\n<br \/>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/X5RetailGroup\/blog\/520234\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f SAP \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0435\u043a\u0442\u0440 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f, \u043a\u0430\u043a \u0434\u043b\u044f \u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0442\u0430\u043a \u0438 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u0442\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438 \u043e\u0442\u0447\u0435\u0442\u043d\u043e\u0441\u0442\u0438. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 SAP Business Warehouse (SAP BW) \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445, \u043e\u0431\u043b\u0430\u0434\u0430\u044e\u0449\u0438\u0439 \u0448\u0438\u0440\u043e\u043a\u0438\u043c\u0438 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u043c\u0438. \u041f\u0440\u0438 \u0432\u0441\u0435\u0445 \u0441\u0432\u043e\u0438\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u0445 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 SAP BW \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u043e\u0434\u043d\u0438\u043c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":95022,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-95021","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f SAP \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0435\u043a\u0442\u0440 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f, \u043a\u0430\u043a \u0434\u043b\u044f \u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0442\u0430\u043a \u0438 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u0442\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438 \u043e\u0442\u0447\u0435\u0442\u043d\u043e\u0441\u0442\u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/ekstrakcziya-dannyh-iz-sap-hcm-v-non-sap-hranilishha-dannyh\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u042d\u043a\u0441\u0442\u0440\u0430\u043a\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 SAP HCM \u0432 non-SAP \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f SAP \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0435\u043a\u0442\u0440 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f, \u043a\u0430\u043a \u0434\u043b\u044f \u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0442\u0430\u043a \u0438 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u0442\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438 \u043e\u0442\u0447\u0435\u0442\u043d\u043e\u0441\u0442\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/ekstrakcziya-dannyh-iz-sap-hcm-v-non-sap-hranilishha-dannyh\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-09-24T17:42:23+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-09-24T17:42:23+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Ekstrakcja danych z SAP HCM do nienaowanych magazyn\u00f3w danych | ProHoster","description":"Jak wiadomo, firma SAP oferuje pe\u0142en zakres oprogramowania, zar\u00f3wno do prowadzenia danych transakcyjnych, jak i do przetwarzania tych danych w systemach analizy i raportowania.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/ekstrakcziya-dannyh-iz-sap-hcm-v-non-sap-hranilishha-dannyh","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u042d\u043a\u0441\u0442\u0440\u0430\u043a\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 SAP HCM \u0432 non-SAP \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 | ProHoster","og:description":"\u041a\u0430\u043a \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f SAP \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0435\u043a\u0442\u0440 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f, \u043a\u0430\u043a \u0434\u043b\u044f \u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0442\u0430\u043a \u0438 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u0442\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438 \u043e\u0442\u0447\u0435\u0442\u043d\u043e\u0441\u0442\u0438.","og:url":"https:\/\/prohoster.info\/pl\/blog\/administrirovanie\/ekstrakcziya-dannyh-iz-sap-hcm-v-non-sap-hranilishha-dannyh","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-09-24T17:42:23+00:00","article:modified_time":"2020-09-24T17:42:23+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"95021","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:13:39","updated":"2026-02-22 15:29:41","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/95021","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=95021"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/95021\/revisions"}],"predecessor-version":[{"id":162188,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/95021\/revisions\/162188"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media\/95022"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=95021"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=95021"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=95021"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}