etl vs db testing closer look etl testing need
Testowanie oprogramowania obejmuje wiele obszarów, na których należy się skoncentrować. Główne odmiany to testy funkcjonalne i niefunkcjonalne. Testowanie funkcjonalne to proceduralny sposób zapewniający, że opracowana funkcjonalność działa zgodnie z oczekiwaniami. Testowanie niefunkcjonalne to podejście, dzięki któremu można zapewnić aspekty niefunkcjonalne, takie jak ulepszenie lub wydajność na akceptowalnym poziomie.
Jest jeszcze inny rodzaj testowania o nazwie Testowanie DB . Dane są zorganizowane w bazie danych w postaci tabel. W biznesie mogą występować przepływy dane z wielu tabel można łączyć lub przetwarzać w jednej tabeli i odwrotnie.
Testowanie ETL to inny rodzaj testowania preferowany w przypadku biznesowym, w którym klient szuka potrzeby raportowania. Raportowanie jest poszukiwane w celu analizy zapotrzebowania, potrzeb i podaży, tak aby klienci, biznes i użytkownicy końcowi byli bardzo dobrze obsługiwani i odnosili korzyści.
Czego nauczysz się z tego samouczka?
W tym samouczku dowiesz się, czym jest testowanie bazy danych, czym jest testowanie ETL, czym różni się testowanie bazy danych od testowania ETL, a także więcej szczegółów na temat potrzeb, procesu i planowania testowania ETL na rzeczywistych przykładach.
Bardziej szczegółowo omówiliśmy również testy ETL na poniższej stronie. Spójrz też na to.
=> Wskazówki i techniki testowania ETL / hurtowni danych
Czego się nauczysz:
Testowanie DB a testowanie ETL
Większość z nas jest trochę zdezorientowana, biorąc pod uwagę, że zarówno testowanie bazy danych, jak i testowanie ETL są podobne i takie same. Faktem jest, że są podobne, ale nie takie same.
Testowanie DB:
Testowanie bazy danych jest zwykle szeroko stosowane w przepływach biznesowych, w których w aplikacji występuje wiele przepływów danych z wielu źródeł danych do jednej tabeli. Źródłem danych może być tabela, plik płaski, aplikacja lub cokolwiek innego, co może dostarczyć niektórych danych wyjściowych.
Z kolei uzyskane dane wyjściowe mogą być nadal używane jako dane wejściowe dla sekwencyjnego przepływu biznesowego. Dlatego też, gdy przeprowadzamy testy bazy danych, najważniejszą rzeczą, którą należy przechwycić, jest sposób, w jaki dane mogą zostać przekształcone ze źródła, a także sposób ich zapisania w lokalizacji docelowej.
Synchronizacja to jedna z głównych i zasadniczych rzeczy, którą należy wziąć pod uwagę podczas przeprowadzania testów bazy danych. Ze względu na umiejscowienie aplikacji w przepływie architektonicznym może wystąpić kilka problemów z synchronizacją danych lub bazy danych. Dlatego podczas wykonywania testów należy o to zadbać, ponieważ może to przezwyciężyć ten potencjał nieprawidłowe wady lub błędy.
Przykład 1:
Projekt „A” ma zintegrowaną architekturę, w której konkretna aplikacja korzysta z danych z kilku innych heterogenicznych źródeł danych. W związku z tym integralność tych danych z lokalizacją docelową musi zostać przeprowadzona wraz z walidacją pod kątem:
- Walidacja podstawowego klucza obcego
- Integralność wartości kolumny
- Wartości null dla dowolnych kolumn
Co to jest testowanie ETL?
Testowanie ETL to specjalny rodzaj testów, które klient chce wykonać w celu prognozowania i analizy swojej działalności. Jest to głównie używane do celów raportowania. Na przykład, jeśli klienci muszą informować o klientach, którzy używają lub wybierają ich produkt na podstawie dnia zakupu, muszą skorzystać z raportów ETL.
Poczta analiza i raportowanie , te dane są magazynowane dane do hurtowni danych, do której trzeba przenieść stare historyczne dane biznesowe.
teledyski youtube darmowe oprogramowanie do pobrania
Jest to test wielopoziomowy, ponieważ dane ze źródła są przekształcane w wiele środowisk, zanim dotrą do ostatecznej docelowej lokalizacji.
Przykład nr 2:
Rozważymy grupę „A” prowadzącą działalność z klientami detalicznymi za pośrednictwem rynku zakupów, na którym klient może zakupić wszelkie artykuły gospodarstwa domowego niezbędne do ich codziennego przetrwania. Tutaj wszyscy odwiedzający klienci otrzymują unikalny identyfikator członkowski, za pomocą którego mogą zdobywać punkty za każdym razem, gdy przychodzą, aby dokonać zakupu na rynku zakupów.
Zgodnie z regulaminem grupy zdobyte punkty co roku tracą ważność. W zależności od ich wykorzystania członkostwo może zostać podniesione do wyższej klasy lub obniżone do niższej klasy w porównaniu do obecnego stopnia.
Po 5 latach tworzenia rynku zakupów obecnie zarząd szuka możliwości zwiększenia swojej działalności wraz z przychodami.
Dlatego potrzebowali kilku raportów biznesowych, aby mogli promować swoich klientów.
W Testowaniu baz danych wykonujemy następujące czynności:
# 1) Walidacje w tabelach docelowych, które są tworzone z kolumnami z obliczeniami logicznymi, zgodnie z opisem w arkuszu mapowania logicznego i dokumencie routingu danych.
#dwa) Manipulacje, takie jak wstawianie, aktualizowanie i usuwanie danych klienta, mogą być wykonywane w dowolnej aplikacji POS użytkownika końcowego w zintegrowanym systemie wraz z bazą danych zaplecza, tak aby te same zmiany zostały odzwierciedlone w systemie końcowym.
# 3) Testowanie bazy danych musi zapewnić, że nie ma danych klientów, które zostały błędnie zinterpretowane lub nawet obcięte. Może to prowadzić do poważnych problemów, takich jak nieprawidłowe mapowanie danych klientów z ich lojalnością
W testach ETL sprawdzamy, czy:
# 1) Zakładając, że w źródle jest 100 klientów, sprawdzisz, czy wszyscy ci klienci wraz z ich danymi ze 100 wierszy zostały przeniesione z systemu źródłowego do docelowego. Nazywa się to weryfikacją Sprawdzenie kompletności danych.
#dwa) Sprawdzenie, czy dane klienta zostały odpowiednio zmanipulowane i przedstawione w 100 wierszach. Nazywa się to po prostu weryfikacją Kontrola dokładności danych .
# 3) Raporty dla klientów, którzy w danym okresie uzyskali punkty więcej niż x wartości.
Badanie porównawcze testów ETL i DB
Testy ETL i DB mają kilka aspektów różniących się między sobą, które są ważniejsze do zrozumienia przed ich wykonaniem. Pomaga nam to zrozumieć wartości i znaczenie testów oraz sposób, w jaki pomagają one biznesowi.
Poniżej znajduje się tabelaryczny formularz opisujący podstawowe zachowanie obu formatów testowych.
Testowanie DB | Testowanie ETL | |
---|---|---|
Charakter danych | Używane są tutaj znormalizowane dane | Używane są tutaj zdenormalizowane dane |
Główny cel | Integracja danych | Raportowanie BI |
Obowiązujące miejsce | W systemie funkcjonalnym, w którym następuje przepływ biznesowy | Poza środowiskiem przepływu biznesowego. dane wejściowe to historyczne dane biznesowe |
Narzędzie do automatyzacji | QTP, Selenium | Informatica, QuerySurge, COGNOS |
Wpływ na biznes | Może to prowadzić do poważnych skutków, ponieważ jest to zintegrowana architektura przepływów biznesowych | Potencjalne skutki, takie jak wtedy, gdy klient chce, aby prognozowanie i analiza były wykonane |
Zastosowane modelowanie | Powiązanie encji | Wymiarowy |
System | Przetwarzanie transakcji online | Przetwarzanie analityczne online |
Dlaczego firma powinna wybrać ETL?
Dostępnych jest wiele potrzeb biznesowych do rozważenia testów ETL. Każda firma musi mieć swoją wyjątkową misję i branżę. Każda firma ma swój cykl życia produktu, który przybiera ogólną postać:
najlepsze miejsce do oglądania anime online za darmo
Jest bardzo jasne, że każdy nowy produkt wchodzi na rynek z ogromnym wzrostem sprzedaży i do etapu zwanego dojrzałością, po czym jego sprzedaż spada. Ta stopniowa zmiana jest świadkiem zdecydowanego spadku rozwoju biznesu. Dlatego ważniejsze jest przeanalizowanie potrzeb klientów w zakresie rozwoju firmy i innych czynników wymaganych do zwiększenia rentowności organizacji.
W rzeczywistości klienci chcą analizować dane historyczne i strategicznie opracowywać raporty.
Planowanie testów ETL
Jednym z głównych etapów testowania ETL jest planowanie testu, który ma zostać wykonany. Będzie podobny do Plan testów do testowania systemu który jest zwykle wykonywany z wyjątkiem kilku atrybutów, takich jak wymagania i przypadki testowe.
Tutaj wymagania są niczym innym jak plikiem arkusz mapowania które będą miały rodzaj mapowania między danymi w różnych bazach danych. Ponieważ zdajemy sobie sprawę, że testowanie ETL odbywa się na wielu poziomach, potrzebne są różne mapowania, aby to sprawdzić.
W większości przypadków dane są pobierane ze źródłowych baz danych nie są bezpośrednio. Wszystkie dane źródłowe będą miały widok tabel, z którego można je wykorzystać.
Przykład: Poniżej znajduje się przykład tego, jak można zapewnić mapowania. Dwie kolumny VIEW_NAME i TABLE_NAME mogą służyć do reprezentowania widoków do odczytu danych odpowiednio ze źródła i tabeli w środowisku ETL.
Warto zachować konwencję nazewnictwa, która może nam pomóc przy planowaniu automatyzacji. Notacja ogólna, której można użyć, to po prostu przedrostek nazwy środowiska.
Najważniejszą rzeczą w ETL jest identyfikacja podstawowych danych i tabel ze źródła. Kolejnym istotnym krokiem jest mapowanie tabel ze źródła do środowiska ETL.
Poniżej przedstawiono przykład powiązania mapowania między tabelami z różnych środowisk z celem ETL.
Powyższe mapowanie zakłada, że dane z tabeli źródłowej do tabeli pomostowej. A potem do stołów w EDW, a potem do OLAP które jest ostatecznym środowiskiem raportowania. Dlatego w dowolnym momencie synchronizacja danych jest bardzo ważna dla dobra ETL.
Krytyczne potrzeby ETL
Jak rozumiemy, ETL to potrzeba prognozowania, raportowania i analizowania biznesu w celu uchwycenia potrzeb klientów w bardziej sukcesywny sposób. Dzięki temu firma będzie miała wyższe wymagania niż w przeszłości.
Oto kilka krytycznych potrzeb, bez których nie można zrealizować testów ETL:
- Identyfikacja danych i tabel : Jest to ważne, ponieważ może istnieć wiele innych nieistotnych i niepotrzebnych danych, które mogą mieć najmniejsze znaczenie podczas prognozowania i analizy potrzeb klientów. Stąd odpowiednie dane i tabele należy wybrać przed rozpoczęciem prac ETL.
- Arkusz mapowania : Jest to jedna z najważniejszych potrzeb podczas wykonywania prac ETL. Mapowanie właściwej tabeli od źródła do miejsca docelowego jest obowiązkowe, a wszelkie problemy lub nieprawidłowe dane w tym arkuszu mogą wpłynąć na cały element dostarczany ETL.
- Projekty tabel i dane, typ kolumny : Jest to kolejny ważny krok podczas rozważania mapowania tabel źródłowych na tabele docelowe. Typ kolumny musi pasować do tabel w obu miejscach itp.
- Dostęp do bazy danych : Najważniejsze to dostęp do bazy danych, w której działa ETL. Wszelkie ograniczenia dostępu będą miały równoważny wpływ.
implementacja drzewa wyszukiwania binarnego w java
Raportowanie i testowanie ETL
Raportowanie w ETL jest ważniejsze, ponieważ wyjaśnia i ukierunkowuje klientów na potrzeby klienta. Dzięki temu mogą prognozować i analizować dokładne potrzeby klientów
Przykład nr 3:
Firma produkująca tkaniny jedwabne chciała przeanalizować swoją roczną sprzedaż. Przeglądając ich roczną sprzedaż, stwierdzili, że w sierpniu i wrześniu nastąpił ogromny spadek sprzedaży dzięki wygenerowanemu przez nich raportowi.
Dlatego zdecydowali się na wprowadzenie oferty promocyjnej w postaci wymiany, rabatów itp., Która zwiększyła ich sprzedaż.
Podstawowe zagadnienia w testowaniu ETL
Podczas przeprowadzania testów ETL może wystąpić wiele problemów, takich jak następujące:
- Dostęp do tabel źródłowych lub widoków będzie nieprawidłowy.
- Nazwa kolumny i typ danych ze źródła do następnej warstwy mogą nie być zgodne.
- Szereg rekordów z tabeli źródłowej do docelowej tabeli może nie pasować.
A może być znacznie więcej.
Poniżej znajduje się przykład arkusza mapowania, w którym znajdują się kolumny takie jak VIEW_NAME, COLUMN_NAME, DATA_TYPE, TABLE_NAME, COLUMN_NAME, DATA_TYPE i TRANSFORMATION LOGIC.
Pierwsze 3 kolumny przedstawiają szczegóły źródłowej bazy danych, a kolejne 3 to szczegóły bezpośrednio poprzedzającej bazy danych. Ostatnia kolumna jest bardzo ważna. Logika transformacji to sposób, w jaki dane ze źródła są odczytywane i przechowywane w docelowej bazie danych. To zależy od biznesu i potrzeb ETL.
Punkty do zapamiętania podczas planowania i wykonywania testów ETL
Najważniejszą rzeczą w testowaniu ETL jest ładowanie danych na podstawie kryteriów ekstrakcji ze źródłowej bazy danych. Gdy to kryterium jest nieważne lub nieaktualne, w tabeli nie będzie danych do przeprowadzenia testów ETL, które naprawdę powodują więcej problemów.
Oto kilka punktów, na które należy zwrócić uwagę podczas planowania i wykonywania testów ETL:
# 1) Dane są pozyskiwane z heterogenicznych źródeł danych
#dwa) Obsługa procesów ETL w zintegrowanym środowisku, które mają różne:
- DBMS
- TY
- Sprzęt komputerowy
- Protokoły komunikacyjne
# 3) Konieczność posiadania logicznego arkusza mapowania danych, zanim dane fizyczne będą mogły zostać przekształcone
# 4) Zrozumienie i zbadanie źródeł danych
# 5) Ładowanie początkowe i przyrostowe
# 6) Kolumny kontrolne
# 7) Ładowanie faktów i wymiarów
Narzędzia ETL i ich znaczące wykorzystanie
Narzędzia ETL są zasadniczo używane do tworzenia i konwertowania plików logika transformacji przenosząc dane ze źródła do innego, stosując logikę transformacji. Możesz także mapować schematy od źródła do miejsca docelowego, co występuje w unikalny sposób, przekształcać i czyścić dane, zanim będą mogły zostać przeniesione do miejsca docelowego, wraz z ładowaniem w miejscu docelowym w efektywny sposób.
Może to znacznie zmniejszyć wysiłek ręczny, ponieważ można wykonać mapowanie, które jest używane do prawie wszystkich walidacji i weryfikacji ETL.
- Informatyka - PowerCenter - jest jednym z popularnych narzędzi ETL wprowadzonych przez Informatica Corporation. Ma bardzo dobrą bazę klientów obejmującą duże obszary. Głównymi komponentami narzędzia są jego narzędzia dla klientów oraz narzędzia repozytorium i serwery. Aby dowiedzieć się więcej o narzędziu, kliknij tutaj
- IBM - Serwer Informacji Infosphere - IBM, który jest liderem rynku pod względem technologii komputerowej, opracował w 2008 r. Serwer Infosphere Information służący do integracji i zarządzania informacjami. Aby dowiedzieć się więcej o narzędziu, kliknij tutaj
- Oracle - integrator danych - Oracle Corporation opracowała swoje narzędzie ETL pod nazwą Oracle - Data Integrator. Rosnąca obsługa klienta sprawiła, że zaktualizowali swoje narzędzia ETL w różnych wersjach. Aby dowiedzieć się więcej o narzędziu, kliknij tutaj
Więcej przykładów wykorzystania testów ETL:
Biorąc pod uwagę niektóre linie lotnicze, które chcą wprowadzać promocje i oferty, aby strategicznie przyciągnąć klientów. Najpierw spróbują zrozumieć wymagania i potrzeby specyfikacji klienta. Aby to osiągnąć, będą potrzebować danych historycznych, najlepiej danych z ostatnich 2 lat. Korzystając z danych, przeanalizują i przygotują raporty, które będą pomocne w zrozumieniu potrzeb klientów.
Raporty mogą być następujących rodzajów:
- Klienci z regionu A, którzy podróżują do regionu B w określonych terminach
- Klienci o określonym kryterium wieku podróżują do miasta XX
Może być wiele innych raportów.
Analiza tych raportów pomoże klientom zidentyfikować rodzaje promocji i ofert, które przyniosą korzyści klientom, a jednocześnie mogą przynieść korzyści firmom, w przypadku których może to być sytuacja korzystna dla wszystkich. Można to łatwo osiągnąć dzięki testom i raportom ETL.
Jednocześnie segment IT boryka się z poważnym problemem związanym z bazą danych, który, jak zauważono, spowodował zatrzymanie wielu usług, co z kolei może mieć wpływ na biznes. W trakcie dochodzenia stwierdzono, że niektóre nieprawidłowe dane uszkodziły kilka baz danych, które wymagały ręcznej korekty.
W pierwszym przypadku wymagane będą raporty i testy ETL.
Natomiast w drugim przypadku testowanie bazy danych musi być wykonane poprawnie, aby przezwyciężyć problemy z nieprawidłowymi danymi.
Wniosek
Mam nadzieję, że powyższy samouczek dostarczył prostego i jasnego przeglądu tego, czym jest testowanie ETL i dlaczego należy je wykonać, wraz z wpływem na biznes lub korzyściami, jakie przynoszą. To nie koniec, ale może się rozszerzyć, aby przewidzieć rozwój biznesu.
O autorze: Ten tutorial został napisany przez Nagarajana. Jest liderem testów z ponad 6-letnim doświadczeniem w testowaniu oprogramowania w różnych obszarach funkcjonalnych, takich jak bankowość, linie lotnicze i telekomunikacja, zarówno w zakresie ręcznym, jak i automatyzacji.
Daj nam znać swoje przemyślenia / pytania w komentarzach poniżej.
rekomendowane lektury
- ETL Testing Interview Pytania i odpowiedzi
- Samouczek dotyczący testowania hurtowni danych ETL (kompletny przewodnik)
- 10 najlepszych narzędzi testowych ETL w 2021 r
- Jak przeprowadzić testy ETL za pomocą narzędzia Informatica PowerCenter
- 31 Najważniejsze pytania i odpowiedzi na temat testowania baz danych
- Ponad 40 najlepszych narzędzi do testowania baz danych - popularne rozwiązania do testowania danych
- Kompletny przewodnik po testowaniu baz danych (dlaczego, co i jak testować dane)
- Testowanie bazy danych selenu (przy użyciu WebDriver i JDBC API)