Table Union All (krok)
Użyj, aby połączyć wiele tabel danych o tej samej strukturze kolumn w jedną tabelę danych. Dobrym kandydatem do tej transformacji są na przykład dane szeregów czasowych. Wynikiem są wszystkie rekordy z łączonych tabel.
Sekcja Źródła stanowi zbiór wszystkich tabel danych, które mają zostać dołączone do siebie. Zwykle wszystkie tabele danych mają taką samą (lub podobną) strukturę kolumn. Do dodania tabeli danych do listy służą dwa przyciski:
- Wstaw wiersz
- Dołącz wiersz
Te same opcje wyświetla też kliknięcie prawym przyciskiem myszy w oknie Wybierz źródło do edycji. Kliknięcie prawym przyciskiem myszy już dodanej tabeli wyświetla dodatkowo opcję Usuń.
Aby transformacja wykonała się poprawnie, w sekcji Źródła musi znajdować się jeden wpis dla każdej źródłowej tabeli danych, która ma zostać dołączona. Wpisy są wymienione w kolejności, w jakiej zostaną dołączone. Aby zmienić kolejność, kliknij tabelę prawym przyciskiem myszy, co wyświetli następujące opcje:
- Przenieś w dół (jeśli dotyczy)
- Przenieś na koniec (jeśli dotyczy)
- Przenieś w górę (jeśli dotyczy)
- Przenieś na początek (jeśli dotyczy)
Domyślnie każde źródło nosi nazwę New Frame, ale zachęcamy modelującego do nadania opisowych nazw przez dwukrotne kliknięcie nazwy i jej zmianę.
Tabela docelowa
Dział zatytułowany „Tabela docelowa”Domyślnie Tabela docelowa pozostaje pusta. Przed nadaniem nazwy pamiętaj, że tabele danych muszą być zgodne z konwencjami nazewnictwa systemu Linux. Dlatego zalecamy, aby nazwy składały się wyłącznie ze znaków alfanumerycznych. Analyze automatycznie usunie z nazwy nieprawidłowe znaki. Ograniczy też jej długość do 256 znaków, więc pisz zwięźle!
Tabela docelowa

Aby ustawić tabelę docelową, wybierz istniejącą tabelę z listy rozwijanej Tabela docelowa albo kliknij zielony znak “+”, aby utworzyć nową tabelę docelową.
Tworzenie tabeli
Podczas tworzenia nowej tabeli możesz utworzyć ją jako Widok lub jako Tabela.
Widoki:
Widoki są przydatne, ponieważ czas wykonania kroku jest znacznie krótszy niż w przypadku tabeli. Wadą widoków jest to, że nie nadają się do eksploracji danych w trybie Szczegóły tabeli.
Tabele:
Gdy celem jest tabela, wykonanie kroku trwa dłużej, ale eksploracja danych w trybie Szczegóły jest znacznie szybsza niż w przypadku widoku.
Karta Wybór danych tabeli
Dział zatytułowany „Karta Wybór danych tabeli”Tabela źródłowa
Dział zatytułowany „Tabela źródłowa”Wybór tabeli
Są dwie opcje wyboru tabeli lub, w drugiej opcji, tabel:
Pierwsza opcja to użycie listy rozwijanej Konkretna tabela do wybrania tabeli.
Druga to użycie opcji Tabele pasujące do wyszukiwania, w której podajesz Ścieżka wyszukiwania i Szukany tekst, aby wybrać tabelę lub tabele spełniające kryteria wyszukiwania. Ta opcja jest bardzo przydatna, jeśli przepływ pracy tworzy serię tabel o wspólnym wzorcu nazwy, zapisanych z dołączoną datą.

Kolumny źródłowe
Dział zatytułowany „Kolumny źródłowe”Konfiguracja Data Mapper

Data Mapper służy do mapowania kolumn z danych źródłowych na tabelę danych docelowych.
Sprawdzanie źródła i wypełnianie mappera
Przycisk menu Sprawdź źródło udostępnia dodatkowe sposoby mapowania kolumn ze źródła na cel:
- Wypełnij obie tabele mapowania: propaguje wszystkie wartości z tabeli danych źródłowych do tabeli danych docelowych. Jest to ustawienie domyślne.
- Wypełnij tylko tabelę mapowania źródła: mapuje wszystkie wartości wyłącznie w tabeli danych źródłowych. Jest to przydatne przy modyfikowaniu istniejącego przepływu pracy, gdy zmieniła się struktura kolumn źródłowych.
- Wypełnij tylko tabelę mapowania celu: propaguje wszystkie wartości wyłącznie do tabeli danych docelowych.
Jeśli opcje kolumn źródłowych i docelowych nie wystarczą, kolejne kolumny można dodać do tabeli danych docelowych na kilka sposobów:
- Propaguj wszystko wstawia wszystkie kolumny źródłowe do tabeli danych docelowych, niezależnie od tego, czy już w niej istniały.
- Propaguj zaznaczone wstawia tylko zaznaczone kolumny źródłowe.
- Kliknij prawym przyciskiem myszy po stronie docelowej i wybierz Wstaw wiersz, aby wstawić wiersz bezpośrednio nad aktualnie zaznaczonym wierszem.
- Kliknij prawym przyciskiem myszy po stronie docelowej i wybierz Dołącz wiersz, aby wstawić wiersz na dole (z prawej strony) tabeli danych docelowych.
Usuwanie kolumn
Aby usunąć kolumny z tabeli danych docelowych, zaznacz wybrane kolumny, kliknij prawym przyciskiem myszy i wybierz Usuń.
Kolumny źródłowe, których nie ma już na liście
Wiersz docelowy może wskazywać Kolumnę źródłową, której tabela danych źródłowych już nie zawiera, na przykład po ponownym sprawdzeniu źródła. Krok nigdy sam nie usuwa takiego wiersza. Zamiast tego nazwa kolumny jest wyświetlana na czerwono, za znakiem ostrzegawczym ⚠, a po najechaniu na nią kursorem pojawia się informacja, że kolumny nie ma wśród kolumn źródłowych. W kroku z kilkoma tabelami, takim jak unia, każda tabela jest sprawdzana względem własnych kolumn źródłowych.
Wiersz ze Stałą, Wyrażeniem lub podsumowaniem Liczba (z wartościami null) nigdy nie jest oznaczany, ponieważ krok nie odczytuje jego kolumny źródłowej. Nic nie jest oznaczane, dopóki tabela danych źródłowych nie zawiera żadnych kolumn, na przykład przed pierwszym sprawdzeniem źródła.
Podczas zapisywania kroku, który nadal ma oznaczone wiersze, okno Znaleziono nieaktualne kolumny wyświetla je pod kartą lub tabelą, do której należą, i oferuje trzy opcje:
- Usuń wszystkie i zapisz — usuń oznaczone wiersze, a następnie zapisz.
- Zapisz mimo to — zapisz krok bez zmian.
- Anuluj — wróć do kroku bez zapisywania.
Aby zachować wiersz i usunąć jego ostrzeżenie, dodaj kolumnę z powrotem do tabeli danych źródłowych albo wybierz kolumnę, którą ta tabela zawiera.
Kolumny brakujące w tabeli źródłowej
Podczas zapisywania sama tabela danych źródłowych jest sprawdzana w jej obecnym stanie. Kolumna, którą krok wymienia wśród kolumn źródłowych, a której tabela nie ma, na przykład zmieniona lub usunięta przez wcześniejszy krok, oznacza, że kolumny kroku są nieaktualne, a krok odczytujący taką kolumnę zakończy się błędem podczas uruchomienia. Zapisywanie otwiera wtedy okno dialogowe Brakujące kolumny źródłowe, które wymienia każdą tabelę i brakujące w niej kolumny, i oferuje dwa wybory:
- Zapisz mimo to — zapisuje krok bez zmian.
- Anuluj — wraca do kroku bez zapisywania.
Nic nie jest usuwane automatycznie, ponieważ błąd może leżeć po stronie tabeli, a ta może się jeszcze zmienić przed uruchomieniem kroku. Gdy oznaczone są także wiersze, których już nie ma na liście, oba komunikaty pojawiają się razem w oknie dialogowym Znaleziono nieaktualne kolumny, a opcja Usuń wszystkie i zapisz usuwa tylko oznaczone wiersze. Gdy lista kolumn źródłowych jest pusta, sprawdzane są zamiast niej kolumny mapowane przez krok, z wyjątkiem wierszy z podsumowaniem Stała, Wyrażenie lub Liczba (z wartościami null), które nie odczytują żadnej kolumny.
Źródło nazwane za pomocą zmiennej, takie jak {year}/Sales, jest sprawdzane w stanie zmiennej z chwili zapisywania, a okno dialogowe podaje nazwę sprawdzonej tabeli, na przykład 2026/Sales (from {year}/Sales). Zmienna ustawiana przez pętlę przechowuje wartość z jej ostatniej iteracji, więc pętla po tabelach o różnej strukturze może ostrzegać o tabeli, której następne uruchomienie nie odczyta. Nie jest sprawdzana tabela, która jeszcze nie istnieje, na przykład tworzona przez wcześniejszy krok przepływu pracy, ani źródło, którego zmienna nie ma wartości, tabela wyszukiwana przez krok podczas uruchomienia, ani tabela, której w danej chwili nie można odczytać.
Typ danych kolumny
Każda kolumna docelowa ma Typ. Kolumna propagowana ze źródła zachowuje typ kolumny źródłowej; dodany ręcznie wiersz ma początkowo typ Tekst, a w polu Typ określasz, czym kolumna ma faktycznie być — kolumna, którą zamierzasz sumować lub sortować, wymaga typu liczbowego albo daty, ponieważ tekst jest sortowany i sumowany jako tekst.
Krok zapisany z kolumną bez żadnego typu nadal się uruchamia. Typ jest ustalany w chwili rozpoczęcia kroku na podstawie kolumny źródłowej, którą ta kolumna odczytuje. Jeśli nie ma z czego go odczytać, traktowany jest jako tekst: kolumny kroku Wyodrębnij SQL pochodzą z napisanego przez Ciebie zapytania, a nie z zmapowanego źródła, a gdy kilka źródeł zawiera kolumnę o tej samej nazwie, lecz o niezgodnych typach, używany jest tekst zamiast zgadywania jednego z nich — błędne odgadnięcie powoduje konwersję, którą magazyn danych może odrzucić, a wszystko można przekonwertować na tekst.
Samodzielne ustawienie pola Typ nadal jest sposobem na określenie, czym kolumna ma być. Pozostawienie go nieustawionego oznacza zgodę na to, czym akurat jest kolumna źródłowa.
Zmiana kolejności kolumn
Aby zmienić kolejność kolumn w tabeli danych docelowych, zaznacz wybrane kolumny. Możesz użyć jednej z poniższych metod:
- Strzałki przenoszenia zbiorczego: wybierz odpowiednią opcję przenoszenia za pomocą strzałek w prawym górnym rogu
- Menu kontekstowe: kliknij prawym przyciskiem myszy i wybierz Przenieś na początek, Przenieś w górę, Przenieś w dół lub Przenieś na koniec.
Ograniczanie wyniku do unikalnych rekordów
Aby zwrócić tylko unikalne wartości, wybierz opcję menu Unikalne. Spowoduje to wyświetlenie zestawu pól wyboru dla każdej kolumny źródła. Wystarczy zaznaczyć pole obok odpowiedniej kolumny, aby zwrócić tylko unikalne wyniki.
W zależności od sytuacji warto rozważyć zastosowanie podsumowania.
Proces usuwania duplikatów zachowuje pierwszy znaleziony unikalny rekord, a pozostałe odrzuca. Jeśli spójność między uruchomieniami jest ważna, warto zastosować sortowanie danych.
Agregacja i grupowanie
Aby agregować wyniki, wybierz opcję menu Podsumuj. Spowoduje to wyświetlenie zestawu pól wyboru dla każdej kolumny w tabeli danych docelowych. Wybierz odpowiednią metodę podsumowania dla każdej kolumny.
Gdy Sprawdź źródło wypełnia kolumny, kolumna liczbowa zaczyna jako Grupuj według zamiast Suma, jeśli jej nazwa wygląda na identyfikator, na przykład id, customer_id, Order No lub CustomerKey, jeśli jej tabela ustawia ją jako klucz albo jeśli złączenie używa jej jako klucza.
- Grupuj według
- Suma
- Min
- Maks
- Pierwsza
- Ostatnia
- Liczba
- Liczba (z wartościami null)
- Średnia
- Odchylenie standardowe
- Odchylenie standardowe z próby
- Odchylenie standardowe z populacji
- Wariancja
- Wariancja z próby
- Wariancja z populacji
- Zaawansowane bez grupowania
Informacje o zaawansowanym użyciu Data Mapper, takim jak wyrażenia, czyszczenie i stałe, znajdziesz w artykule Zaawansowane użycie Data Mapper
Filtry danych
Dział zatytułowany „Filtry danych”
Aby zapewnić maksymalną elastyczność, filtry danych są dostępne zarówno dla danych źródłowych, jak i docelowych. W przypadku większych zbiorów danych szczególnie korzystne może być odfiltrowanie wierszy już na źródle, aby pozostałe operacje były wykonywane na mniejszym zbiorze danych.
Wybierz podzbiór danych
Ten typ filtru umożliwia filtrowanie przychodzących danych źródłowych na podstawie określonych warunków.
Zastosuj filtr wtórny do danych wynikowych
Ten typ filtru umożliwia zastosowanie filtru do danych wynikowych po transformacji na podstawie określonych warunków. Możliwość zastosowania filtru do wyniku po transformacji pozwala na wykluczenia oparte na wynikach złożonych obliczeń, podsumowań lub funkcji okienkowych.
Końcowe wycinanie tabeli danych (limit)
Wycinanie wierszy umożliwia ograniczenie liczby wierszy w zbiorze wynikowym na podstawie zakresu i punktu początkowego.
Składnia filtrów
Składnia filtrów korzysta z Python SQLAlchemy, czyli tej samej składni, która obowiązuje w innych wyrażeniach.
Przykłady i funkcje wyrażeń znajdziesz w obszarze Wyrażenia.
Dopasowanie kolumn
Dział zatytułowany „Dopasowanie kolumn”Dopasuj kolumny według w sekcji Tabela docelowa określa, jak źródła są ze sobą zestawiane:
- Nazwa (domyślnie) — kolumny każdego źródła są dopasowywane do kolumn pierwszego źródła według nazwy.
- Pozycja — źródła są układane po kolei, tak jak robi to
unionw Spark. Wynik przyjmuje nazwy kolumn pierwszego źródła, a każde źródło musi mieć tyle samo kolumn. Mapowanie kolumn każdego źródła nie jest używane, więc jego karta Wybór danych tabeli jest wyłączona.
W trybie Pozycja każda kolumna otrzymuje typ, do którego pasują wszystkie źródła: dwa typy liczbowe stają się szerszym z nich, data i znacznik czasu stają się znacznikiem czasu, a inne mieszanki stają się tekstem. Kolumna logiczna lub binarna zmieszana z innym typem nie ma typu wspólnego i powoduje niepowodzenie kroku, tak samo jak źródła o różnej liczbie kolumn.
Jeśli brakuje każdej tabeli źródłowej, krok kończy się ostrzeżeniem zamiast niepowodzeniem, w obu trybach.
Co jest sprawdzane przy zapisie
Dział zatytułowany „Co jest sprawdzane przy zapisie”Każde źródło musi zwracać te same kolumny co pierwsze źródło: te same nazwy kolumn i, jeśli oba deklarują typ, ten sam typ. Tabela docelowa jest budowana z kolumn pierwszego źródła. Źródło może wymieniać kolumny w innej kolejności, ponieważ są one dopasowywane według nazwy. Zapis kroku, którego źródła się różnią, jest odrzucany z wymienieniem każdej różnicy: Source ‘east’ must produce the same columns as ‘west’: missing region; not in ‘west’: area.
Zapis uzupełnia też mapowanie każdego źródła, które ma tabelę źródłową, ale nie ma kolumn źródłowych lub docelowych, na podstawie tej tabeli — tak jak zrobiłoby to Wypełnij obie tabele mapowania.