MapForce to narzędzie do integracji danych i przetwarzania ETL, które oferuje zaawansowane funkcje konwersji baz danych. Umożliwia konwersję między dowolną kombinacją danych z baz danych oraz formatów XML, JSON, PDF, CSV i innych plików tekstowych, EDI, Excel, protobuf, XBRL, usług internetowych, Shopify/GraphQL, a także innych formatów baz danych.
Po załadowaniu struktury bazy danych w oknie projektowania, MapForce automatycznie interpretuje schemat bazy danych, umożliwia wybór dostępnych tabel i widoków bazy danych oraz rozpoznaje relacje między tabelami. Następnie można wizualnie przeglądać strukturę bazy danych.
Po załadowaniu wszystkich modeli danych wymaganych do mapowania bazy danych, należy zakończyć proces mapowania, po prostu przeciągając linie łączące struktury źródłowe i docelowe.
Wspierany relacyjny bazy danych:
Wspierany NoSQL Bazy danych:
MapForce obsługuje wszystkie popularne bazy danych relacyjnych, a także popularne bazy danych NoSQL, umożliwiając tworzenie graficznych mapowań między danymi źródłowymi w bazach danych, funkcjami przetwarzania danych i filtrami, oraz innymi strukturami danych różnego typu. Dzięki temu możliwe jest wsparcie dla typowych scenariuszy migracji baz danych, takich jak migracja z MySQL do PostgreSQL, a także niezliczone inne możliwości, w tym transformacje danych typu "jeden do wielu" i łańcuchowe transformacje.
MapForce zawiera zaawansowane narzędzia ETL do zapisywania danych w bazach danych SQL i NoSQL. Obejmuje to nie tylko konwersję formatów danych, takich jak XML, JSON, Shopify/GraphQL i inne, do baz danych, ale także transformację danych z jednego typu bazy danych do innego, na przykład w wyniku fuzji i przejęcia lub migracji systemu.
Wiele transformacji baz danych wymaga manipulacji danymi między źródłem a celem, w oparciu o warunki logiczne lub instrukcje SQL i SQL/XML. Może być konieczne wykonanie porównań logicznych, obliczeń matematycznych lub operacji na łańcuchach znaków, sprawdzenie, czy dane w bazie zawierają określone wartości, oraz wprowadzenie innych modyfikacji danych. Na powyższym zrzucie ekranu, funkcje przetwarzania danych są przedstawione jako pola znajdujące się pomiędzy liniami łączącymi model danych źródłowych i docelowych.
Funkcje przetwarzania danych umożliwiają wykonywanie zaawansowanych mapowań baz danych w czasie rzeczywistym, spełniając różnorodne potrzeby transformacji danych. Można na przykład tworzyć mapowania baz danych, które wykorzystują wiadomości XML lub EDI do pobierania wierszy z bazy danych na podstawie kryteriów filtrowania zawartych w elementach XML lub EDI.
Po zdefiniowaniu mapowania, wbudowany silnik MapForce umożliwia przeglądanie i zapisywanie wyników jednym kliknięciem.
Mapowania baz danych na format XML generują dokument XML. Mapowania baz danych na pliki tekstowe mają na wyjściu pliki CSV lub pliki tekstowe o stałej długości. Mapowania baz danych na format EDI mogą generować wiadomości w formatach EDIFACT, X12 lub HL7. Mapowania baz danych do.. Excel generuje format Office Open XML (OOXML) oraz mapowania do XBRL, co umożliwia tworzenie raportów finansowych w formacie XBRL.
Mapowania do bazy danych generują wyniki w postaci skryptów SQL (np. instrukcje SELECT, INSERT, UPDATE i DELETE) lub skryptów NoSQL, które są uruchamiane bezpośrednio w docelowej bazie danych, z poziomu programu MapForce.
Oprócz natychmiastowej zmiany, Wydajne narzędzia ETL Jest dostępny za pośrednictwem serwera MapForce.
Śledzenie wyników działania bazy danych umożliwia łatwe rejestrowanie wszystkich zmian wprowadzonych przez projekt mapowania danych lub ETL w bazie danych podczas jego działania.
Kiedy funkcja śledzenia jest włączona, zdarzenia takie jak operacje zapisu lub aktualizacji danych w bazie, a także błędy, są rejestrowane w pliku XML, który można później analizować lub przetwarzać automatycznie.
Śledzenie aktywności bazy danych można włączyć na poziomie komponentu bazy danych, tabeli, procedury składowanej lub pola bazy danych. Można wybrać śledzenie wszystkich komunikatów lub tylko błędów, lub też całkowicie wyłączyć śledzenie.
Po wybraniu odpowiedniego poziomu szczegółowości śledzenia, wybrany komponent bazy danych w projekcie mapowania zostaje rozszerzony o strukturę XML, która przedstawia strukturę logów. Jeśli wolisz, aby plik logów był w formacie innym niż XML, możesz przekształcić dane z niego do innego formatu obsługiwanego przez MapForce (np. pliku tekstowego lub nawet innej bazy danych).
Po kliknięciu przycisku "Wyjście", aby wyświetlić podgląd wyniku mapowania, programista może również zobaczyć przykład tego, jak będzie wyglądał dziennik śledzenia, gdy mapowanie zostanie uruchomione.
MapForce oferuje również mechanizmy obsługi transakcji baz danych, które umożliwiają cofnięcie zmian wprowadzonych w bazie danych podczas konwersji, w przypadku wystąpienia błędu, a opcjonalnie umożliwiają kontynuowanie procesu mapowania dla pozostałych danych.
Czasami występuje błąd, który nie uniemożliwia kontynuacji procesu mapowania bazy danych, na przykład gdy pewne ograniczenia bazy danych uniemożliwiają procesowi ETL wstawianie lub aktualizowanie nieprawidłowych danych.
Włączenie obsługi transakcji w bazie danych spowoduje, że wszystkie zmiany wprowadzone przez komponent bazy danych zostaną umieszczone wewnątrz transakcji, która zostanie cofnięta w przypadku wystąpienia błędu. Można wybrać, czy kontynuować przetwarzanie pozostałej części mapowania, czy też przerwać dalsze wykonywanie. Możliwe jest włączenie transakcji zarówno na poziomie komponentu bazy danych, jak i na poziomie akcji wykonywanych na tabelach.
To bardzo przydatne, gdy projektant mapowania danych chce przechwytywać poprawne dane wejściowe i po prostu ignorować dane nieprawidłowe.
Dla użytkowników pracujących z SQL, MapForce oferuje zakładkę "Zapytanie do bazy danych", która umożliwia bezpośrednie wykonywanie zapytań do bazy danych. Po połączeniu z bazą danych za pomocą tej zakładki, MapForce wyświetla jej tabele w postaci hierarchicznej struktury drzewa w oknie przeglądarki.
Następnie można użyć zakładki edytora SQL, aby wyświetlać, edytować i wykonywać instrukcje SQL lub SQL/XML, otwierając istniejące pliki SQL lub tworząc instrukcje SQL od podstaw, korzystając z funkcji przeciągania i upuszczania oraz automatycznego uzupełniania.
Można uruchomić skrypt SQL i wyświetlić wyniki w formie tabeli, a także zapisać zarówno pobrane dane, jak i sam skrypt SQL do oddzielnych plików.
Ustawienia kluczy bazy danych w MapForce pozwalają na dostosowanie sposobu, w jaki wartości kluczy głównych i obcych będą dodawane do bazy danych, która jest celem mapowania danych. Można albo ręcznie wprowadzać wartości kluczy w MapForce, albo można pozwolić systemowi baz danych, aby automatycznie generował te wartości.
W sytuacjach, gdy relacje klucza głównego i/lub klucza obcego nie są wyraźnie zdefiniowane w tabelach bazy danych, MapForce umożliwia zdefiniowanie tych relacji bezpośrednio, bez wpływu na dane źródłowe.
Podczas mapowania danych do bazy danych, MapForce umożliwia wybór operacji na tabelach bazy danych, co pozwala kontrolować sposób zapisu danych. Dzięki temu zyskujesz pełną elastyczność w automatyzacji nawet najbardziej zaawansowanych zadań związanych z zarządzaniem danymi.
Okno dialogowe "Akcje dla tabeli bazy danych", charakteryzujące się prostym interfejsem, umożliwia zdefiniowanie kolumn w wybranej tabeli, które będą używane do określenia, jaka akcja (INSERT, UPDATE, DELETE) powinna zostać wykonana w bazie danych.
To zapewnia bezprecedensową elastyczność w manipulowaniu wierszami baz danych w odpowiedzi na dane XML, bazy danych, EDI, XBRL, pliki tekstowe, arkusze Excel, JSON, JSON5, usługi internetowe lub inne dane z baz danych, przy użyciu narzędzia MapForce.
MapForce oferuje zaawansowane wsparcie dla procedur składowanych, które mogą być wykorzystywane jako komponenty wejściowe (procedury dostarczające wyniki) lub jako komponenty wyjściowe (procedury wstawiające lub aktualizujące dane). Alternatywnie, procedury składowane mogą być wywoływane jak funkcje, co pozwala użytkownikom dostarczać dane wejściowe, wykonywać procedurę składowaną i odczytywać/mapować dane wyjściowe do innych komponentów.
Ten zrzut ekranu pokazuje, jak w SQL Server zdefiniowano procedurę składowaną, która generuje plik XML. Procedura zwraca tabelę danych zawierającą informacje o wszystkich menedżerach znajdujących się w strukturze zarządzania powyżej określonego identyfikatora pracownika, który jest przekazywany jako parametr wejściowy – w tym przykładzie jest to stała wartość 67.
Ten parametr może również być podawany jako wartość obliczona lub jako element danych pobrany z innego miejsca w bazie danych.
MapForce udostępnia menu kontekstowe, które umożliwia użytkownikom uruchomienie zdefiniowanej procedury, aby wyświetlić strukturę danych, która będzie wykorzystana do mapowania. Wykonanie zdefiniowanego mapowania generuje wynik w formacie XML.
MapForce umożliwia również łączenie się z bazą danych i mapowanie danych XML przechowywanych w polach baz danych relacyjnych (obecnie obsługiwane dla SQL Server i IBM DB2). Wystarczy przypisać schemat XML – zarejestrowany w bazie danych lub znajdujący się w lokalnym systemie plików – do danego pola, a MapForce wyświetli ten schemat jako poddrzewo pola bazy danych, co ułatwia proces mapowania.
Zapytania SQL wykonywane wewnątrz bazy danych nie zawsze są wystarczające do złożonych zadań mapowania danych. MapForce oferuje dodatkowe funkcje sortowania danych w bazie danych za pomocą komponentu SQL-WHERE/ORDER, co jest przydatne, gdy dane pobierane z bazy wymagają dodatkowej obróbki, lub gdy inne dane lub warunki w procesie mapowania wpływają na kolejność sortowania wierszy danych.
Okno dialogowe "Akcje dla tabeli bazy danych" obsługuje porównywanie wartości NULL. Porównania uwzględniające wartości NULL stanowią ulepszony sposób obsługi baz danych zawierających takie wartości. Użytkownicy MapForce mogą skonfigurować mapowanie bazy danych, aby porównywanie danych odbywało się z uwzględnieniem wartości NULL, zgodnie z zasadami obowiązującymi dla danego typu bazy danych, który jest używany w mapowaniu.
Mapa danych, która znajduje się po prawej stronie, ma na celu aktualizację docelowej tabeli bez dodawania duplikatów. Obie tabele są zdefiniowane w taki sposób, że pole "email" może przyjmować wartość NULL, co oznacza, że w każdej z tabel mogą istnieć wpisy o identycznych nazwach, ale z wartością NULL w polu "email".
Kliknięcie ikony "Akcje" obok tabeli bazy danych TARGET otwiera okno dialogowe "Akcje bazy danych". Pole wyboru "Równe NULL" obok pola adresu e-mail pozwala programowi MapForce traktować wartości NULL w danych źródłowych i docelowych jako równoważne w celach mapowania danych, nawet jeśli zgodnie z zasadami bazy danych nie są one uważane za takie.
MapForce umożliwia tworzenie mapowań między bazami danych a plikami XML, opartych na strukturach XML (schematach XML lub DTD). Aby stworzyć mapowanie między bazą danych a plikiem XML, wystarczy zaimportować schemat XML i bazę danych do MapForce, a następnie przeciągnąć linie łączące elementy XML i obiekty bazy danych.
Jeśli nie posiadają Państwo powiązanej definicji schematu dla konkretnego dokumentu XML, MapForce generuje schemat XML na podstawie tego dokumentu.
Element `<xs:any>` oraz `<xs:anyAttribute>` w schemacie XML umożliwiają umieszczenie dowolnego nowego elementu lub atrybutu w odpowiednim miejscu w dokumencie instancji XML, nawet jeśli ten nowy element lub atrybut nie jest zdefiniowany w schemacie XML. Jest to znane jako "symbol wieloznaczny" w XML i jest popularnym mechanizmem, który pozwala na pewien stopień dostosowania w wielu schematach XML, obsługujących standardy branżowe w szerokim zakresie działalności.
MapForce obsługuje elementy `<xs:any>` i atrybuty `<xs:anyAttribute>`, umożliwiając mapowanie danych na wyjście w formacie XML lub w dowolnym innym formacie. Nowy przycisk wyboru, znajdujący się obok elementów `<xs:any>` lub `<xs:anyAttribute>` w komponencie wejściowym mapowania XML, otwiera okno dialogowe wyboru symboli wieloznacznych.
Element `<xs:any>`, a także `<xs:anyAttribute>`, są powszechnie używane w projektowaniu schematów XML, a wsparcie dla nich w MapForce było często żądane przez użytkowników.
MapForce umożliwia definiowanie i wykonywanie mapowań baz danych opartych na modelach JSON (JavaScript Object Notation). Można dodać pliki instancji JSON lub schematy JSON jako elementy źródłowe lub docelowe w mapowaniu bazy danych. MapForce odczytuje i zapisuje pliki JSON zgodnie ze standardem JSON Draft 04.
Jak pokazano poniżej, komponenty JSON są wyświetlane z odpowiednią składnią elementów, a ich typy danych są wyraźnie wskazane.
Funkcje przetwarzania danych z biblioteki funkcji MapForce mogą być wykorzystywane do transformacji danych JSON, dokładnie tak samo, jak są używane z innymi komponentami.
Po dodaniu pliku JSON lub JSON5 do mapowania bazy danych, MapForce automatycznie wykrywa, czy jest to plik schematu, czy plik instancji. W przypadku plików instancji JSON lub JSON5, MapForce wyświetli prośbę o wskazanie pliku schematu lub automatyczne wygenerowanie go. MapForce wykorzystuje schemat JSON lub JSON5 do budowy struktury komponentu.
Altova MapForce Server zawiera wbudowany silnik transformacji danych, opracowany dla MapForce, który został znacznie ulepszony, aby działać w środowiskach serwerowych. Serwer MapForce umożliwia.. przekształcenia danych dla dowolnej kombinacji formatów XML, PDF, baz danych, EDI, XBRL, plików tekstowych, Excela, JSON oraz/lub usług internetowych, wykorzystując wstępnie przetworzone i zoptymalizowane mapowania danych przechowywane w plikach wykonywalnych, w oparciu o.. mapowania danych zdefiniowane w programie MapForceMapForce Server przenosi proces ETL danych na wyższy poziom, oferując funkcje serwerowe, takie jak przetwarzanie równoległe i wielowątkowe, masowe wstawianie danych do baz SQL, wsparcie dla różnych platform oraz wiele innych.
Przetwarzanie wstępne umożliwia szybszą pracę i zmniejsza zużycie pamięci dla większości mapowań danych. Serwer MapForce działa pod kontrolą serwera FlowForce, może być uruchamiany w trybie autonomicznym z linii poleceń lub programowo za pomocą interfejsu API.
Po zaprojektowaniu i przetestowaniu mapowania w MapForce, można uruchomić je za pomocą serwera MapForce, aby automatyzować procesy biznesowe, które wymagają powtarzalnych przekształceń danych.
MapForce wstępnie przetwarza i optymalizuje mapowania danych, przechowuje je w plikach wykonywalnych MapForce Server, które mogą być uruchamiane z linii komend za pomocą MapForce Server, oraz przesyła je do wykorzystania w zadaniach FlowForce Server.
Kiedy serwer MapForce działa pod kontrolą serwera FlowForce, mapowania danych i procesy ETL są wykonywane jako etapy zadań serwera FlowForce, w oparciu o wyzwalacze zdefiniowane w ramach zadania serwera FlowForce. Na przykład, nowy dokument instancji XBRL pojawia się w określonym katalogu, co uruchamia wieloetapowe zadanie serwera FlowForce. Zadanie to najpierw weryfikuje plik za pomocą serwera RaptorXML+XBRL, a następnie uruchamia serwer MapForce w celu wyodrębnienia określonych danych z formatu XBRL i wprowadzenia ich do bazy danych.
Funkcja "Bulk Insert" (masowe wstawianie) jest dostępna dla niektórych baz danych i umożliwia wstawienie dużej ilości danych do tabeli bazy danych za pomocą pojedynczego polecenia SQL, w przeciwieństwie do standardowej metody, która polega na używaniu oddzielnych poleceń INSERT dla każdego wiersza. Dzięki znacznemu zmniejszeniu obciążenia przetwarzania przez silnik bazy danych, wydajność jest znacznie wyższa. Testy MapForce Server z wykorzystaniem kilku przykładów wykazały, że funkcja Bulk Insert może być ponad 10 razy szybsza niż pojedyncze polecenia INSERT.
Metoda "bulk insert" jest również korzystna w środowiskach wieloużytkownikowych. Długa sekwencja poleceń "Insert" wysyłanych do bazy danych przez jednego użytkownika może zostać przerwana przez innego użytkownika, który wysyła zapytanie "Select" do tej samej tabeli. W takim przypadku sekwencja operacji "Insert" zostanie kontynuowana. W takiej sytuacji operacja "Select" może skutkować pobraniem niekompletnych lub nieprawidłowych danych.








